0

サロゲート ペアがあるとします。例えば:

\u306f\u30fc

文字を画面に出力する機能はありますか?

4

1 に答える 1

2

手動で行う場合:

echo chr(0x30) . chr(0x6f) . chr(0x30) . chr(0xfc);

文字列がある場合は、いつでも次のことができます。

$callback = function($match) { 
    return chr(hexdec($match[1])) . chr(hexdec($match[2]));
}
preg_replace_callback('#\\\\u([0-9a-f]{2})([0-9a-f]{2})#', $callback, $string);

または、php < 5.3 の場合

$callback = create_function('$match', 
    'return chr(hexdec($match[1])) . chr(hexdec($match[2]));'
);
preg_replace_callback('#\\\\u([0-9a-f]{2})([0-9a-f]{2})#', $callback, $string);
于 2010-08-17T20:22:51.230 に答える