php 如何将unicode转utf8

php将unicode转utf8的方法:首先创建PHP代码示例文件;然后使用“json_encode("汉字", JSON_UNESCAPED_UNICODE);”语句实现unicode转utf8即可。

最近开发时遇到Unicode编码问题,找了半天才知道PHP并没有Unicode转码函数,终于发现用一行PHP代码解决的方案:

$str  = '{"success":true,"msg":"\\u6d3b\\u52a8\\u63a5\\u53e3"}';
echo $str= preg_replace("#\\\\\\u([0-9a-f]+)#ie","iconv('UCS-2','UTF-8', pack('H4', '\\\\1'))",$str);
//更高版本的PHP
echo preg_replace_callback("#\\\\\\u([0-9a-f]+)#i",function($m){return iconv('UCS-2','UTF-8', pack('H4', $m[1]));},$str);

非常强大的一行代码解决方法

还可以用以下办法解决:

echo json_encode("汉字", JSON_UNESCAPED_UNICODE);

PS:居然发现php有 Unicode_decode函数,可惜是实验性的。

更多相关知识,请访问PHP中文网!

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注