PHP-json_encode中文乱码-创新互联

调用json_encode()函数将JSON对象转换为字符串,如果其中包含有中文,默认会输出为unicode编码,如\u8023

创新互联专业为企业提供奉贤网站建设、奉贤做网站、奉贤网站设计、奉贤网站制作等企业网站建设、网页设计与制作、奉贤企业网站模板建站服务,10多年奉贤做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

解决方案1

升级到PHP 5.4,在json_encode()函数中,第二个参数指定JSON_UNESCAPED_UNICODE即可。

解决方案2

对于低版本PHP,对unicode码再进行解码,解码函数如下:

function decodeUnicode($str)

{

return preg_replace_callback('/\\\\u([0-9a-f]{4})/i',

create_function(

'$matches',

'return mb_convert_encoding(pack("H*", $matches[1]), "UTF-8", "UCS-2BE");'

),

$str);

}

例子如下:

$arr = array('name1':"中文",'name2':'abc12');

$jsonstr = decodeUnicode(json_encode($arr));

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享文章:PHP-json_encode中文乱码-创新互联
标题链接:http://hbruida.cn/article/dedgpe.html