【发布时间】:2013-04-12 12:01:44
【问题描述】:
在 C++ 中,可以使用这种表示法创建 UTF-8 字符串:"\uD840\uDC50"。
但是这在 PHP 中不起作用。有没有类似的符号?
如果没有,是否有任何内置方法可以创建一个知道其 Unicode 代码点的 UTF-8 字符串?
【问题讨论】:
标签: php unicode utf-8 hex codepoint
在 C++ 中,可以使用这种表示法创建 UTF-8 字符串:"\uD840\uDC50"。
但是这在 PHP 中不起作用。有没有类似的符号?
如果没有,是否有任何内置方法可以创建一个知道其 Unicode 代码点的 UTF-8 字符串?
【问题讨论】:
标签: php unicode utf-8 hex codepoint
function hexToString($str){return chr(hexdec(substr($str, 2)));}
$result = preg_replace_callback("/(\\\\x..)/isU", function($m) { return hexToString($m[0] ); }, $str);
【讨论】:
我最终是这样实现的:
$utf8 = html_entity_decode("一", ENT_COMPAT, 'UTF-8');
【讨论】: