Example #1
0
/**
 * Take a UTF-8 string and return a space-separated series of hex
 * numbers representing Unicode code points. For debugging.
 *
 * @fixme this is private but extensions + maint scripts are using it
 * @param string $str UTF-8 string.
 * @return string
 * @private
 */
function utf8ToHexSequence($str)
{
    $buf = '';
    foreach (preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY) as $cp) {
        $buf .= sprintf('%04x ', UtfNormal\Utils::utf8ToCodepoint($cp));
    }
    return rtrim($buf);
}
Example #2
0
/**
 * Escape a string for inclusion in a PHP single-quoted string literal.
 *
 * @param string $string string to be escaped.
 * @return String: escaped string.
 * @public
 * @deprecated since 1.25, use UtfNormal\Utils directly
 */
function escapeSingleString($string)
{
    return Utils::escapeSingleString($string);
}
Example #3
0
if ($out) {
    $serCombining = Utils::escapeSingleString(serialize($combiningClass));
    $serComp = Utils::escapeSingleString(serialize($canonicalComp));
    $serCanon = Utils::escapeSingleString(serialize($canonicalDecomp));
    $serCheckNFC = Utils::escapeSingleString(serialize($checkNFC));
    $outdata = "<" . "?php\n/**\n * This file was automatically generated -- do not edit!\n * Run UtfNormalGenerate.php to create this file again (make clean && make)\n *\n * @file\n */\n// @codingStandardsIgnoreFile\n\nUtfNormal\\Validator::\$utfCombiningClass = unserialize( '{$serCombining}' );\nUtfNormal\\Validator::\$utfCanonicalComp = unserialize( '{$serComp}' );\nUtfNormal\\Validator::\$utfCanonicalDecomp = unserialize( '{$serCanon}' );\nUtfNormal\\Validator::\$utfCheckNFC = unserialize( '{$serCheckNFC}' );\n\n";
    fputs($out, $outdata);
    fclose($out);
    print "Wrote out UtfNormalData.inc\n";
} else {
    print "Can't create file UtfNormalData.inc\n";
    exit(-1);
}
$out = fopen(dirname(__DIR__) . "/src/UtfNormalDataK.inc", "wt");
if ($out) {
    $serCompat = Utils::escapeSingleString(serialize($compatibilityDecomp));
    $outdata = "<" . "?php\n/**\n * This file was automatically generated -- do not edit!\n * Run UtfNormalGenerate.php to create this file again (make clean && make)\n *\n * @file\n */\n// @codingStandardsIgnoreFile\n\nUtfNormal\\Validator::\$utfCompatibilityDecomp = unserialize( '{$serCompat}' );\n\n";
    fputs($out, $outdata);
    fclose($out);
    print "Wrote out UtfNormalDataK.inc\n";
    exit(0);
} else {
    print "Can't create file UtfNormalDataK.inc\n";
    exit(-1);
}
# ---------------
function callbackCanonical($matches)
{
    // @codingStandardsIgnoreStart MediaWiki.NamingConventions.ValidGlobalName.wgPrefix
    global $canonicalDecomp;
    // @codingStandardsIgnoreEnd