function update_schema_unaccented_name($Conf)
{
    if (!Dbl::ql("alter table ContactInfo add `unaccentedName` varchar(120) NOT NULL DEFAULT ''")) {
        return false;
    }
    $result = Dbl::ql("select contactId, firstName, lastName from ContactInfo");
    if (!$result) {
        return false;
    }
    $qs = $qv = array();
    while ($result && ($x = $result->fetch_row())) {
        $qs[] = "update ContactInfo set unaccentedName=? where contactId={$x['0']}";
        $qv[] = Text::unaccented_name($x[1], $x[2]);
    }
    Dbl::free($result);
    $q = Dbl::format_query_apply($Conf->dblink, join(";", $qs), $qv);
    if (!$Conf->dblink->multi_query($q)) {
        return false;
    }
    do {
        if ($result = $Conf->dblink->store_result()) {
            $result->free();
        }
    } while ($Conf->dblink->more_results() && $Conf->dblink->next_result());
    return true;
}
Пример #2
0
global $Now;
$Now = gmmktime(0, 0, 0, 5, 24, 2013);
$sig = $s3d->signature("https://examplebucket.s3.amazonaws.com/test.txt", array("Range" => "bytes=0-9"));
xassert_eqq($sig["signature"], "f0e8bdb87c964420e857bd35b5d6ed310bd44f0170aba48dd91039c6036bdb41");
$sig = $s3d->signature("https://examplebucket.s3.amazonaws.com/test%24file.text", array("x-amz-storage-class" => "REDUCED_REDUNDANCY", "method" => "PUT", "Date" => "Fri, 24 May 2013 00:00:00 GMT"), "Welcome to Amazon S3.");
xassert_eqq($sig["signature"], "98ad721746da40c64f1a55b78f14c238d841ea1380cd77a1b5971af0ece108bd");
$sig = $s3d->signature("https://examplebucket.s3.amazonaws.com?lifecycle", array());
xassert_eqq($sig["signature"], "fea454ca298b7da1c68078a5d1bdbfbbe0d65c699e0f91ac7a200a0136783543");
// Dbl::format_query tests
xassert_eqq(Dbl::format_query("Hello"), "Hello");
xassert_eqq(Dbl::format_query("Hello??"), "Hello?");
xassert_eqq(Dbl::format_query("Hello????"), "Hello??");
xassert_eqq(Dbl::format_query("select ?, ?, ?, ?s, ?s, ?s, ?", 1, "a", null, 2, "b", null, 3), "select 1, 'a', NULL, 2, b, , 3");
xassert_eqq(Dbl::format_query_apply("select ?, ?, ?, ?s, ?s, ?s, ?", array(1, "a", null, 2, "b", null, 3)), "select 1, 'a', NULL, 2, b, , 3");
xassert_eqq(Dbl::format_query_apply("select ?{2}, ?{1}, ?, ?s, ?s, ?s, ?", array(1, "a", null, 2, "b", null, 3)), "select 'a', 1, NULL, 2, b, , 3");
xassert_eqq(Dbl::format_query_apply("select ?{2}, ?{1}, ?{ab}, ?{2}s, ?{1}s, ?{ab}s, ?", array(1, "a", "ab" => "Woah", "Leftover")), "select 'a', 1, 'Woah', a, 1, Woah, 'Leftover'");
// Csv::split_lines tests
xassert_array_eqq(CsvParser::split_lines(""), array());
xassert_array_eqq(CsvParser::split_lines("\r"), array("\r"));
xassert_array_eqq(CsvParser::split_lines("\n"), array("\n"));
xassert_array_eqq(CsvParser::split_lines("\r\n"), array("\r\n"));
xassert_array_eqq(CsvParser::split_lines("\r\r\n"), array("\r", "\r\n"));
xassert_array_eqq(CsvParser::split_lines("\r\naaa"), array("\r\n", "aaa"));
xassert_array_eqq(CsvParser::split_lines("\na\r\nb\rc\n"), array("\n", "a\r\n", "b\r", "c\n"));
// random PHP behavior tests
if (PHP_MAJOR_VERSION >= 7) {
    xassert_eqq(substr("", 0, 1), "");
} else {
    xassert_eqq(substr("", 0, 1), false);
}
$s = "";