1. 云栖社区>
  2. PHP教程>
  3. 正文

PHP Json函数不能处理中文的解决办法

作者:用户 来源:互联网 时间:2017-12-01 17:09:58

phpjson函数中文解决处理办法不能

PHP Json函数不能处理中文的解决办法 - 摘要: 本文讲的是PHP Json函数不能处理中文的解决办法, PHP5.2 新增的 json 功能是非常受欢迎的,但是经过测试发现,json_encode 对中文的处理是有问题的:     不能处理GB编码,所有的GB编码都会替换成空字符;     utf8编码的中文被编码成unicode编码,相当


PHP5.2 新增的 json 功能是非常受欢迎的,但是经过测试发现,json_encode

对中文的处理是有问题的:

    不能处理GB编码,所有的GB编码都会替换成空字符;

    utf8编码的中文被编码成unicode编码,相当于javascript的escape函数

处理的结果。

    为了能正确使用json,首先我们就应该在编码上采用utf8编码,然后再对

json_encode的返回结果稍加处理就可以得到正确的结果了。


<?php class Json
{
public static function encode($str)
{
$code = json_encode($str);
return preg_replace("#/u([0-9a-f]+)#ie","iconv('UCS-2',
'UTF-8', pack('H4', '/1'))", $code);
}
public static function decode($str)
{
return json_decode($str);
}
}//任意编码下都正常显示
?>

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php , json , 函数 , 中文 , 解决 , 处理 , 办法 不能 ,以便于您获取更多的相关知识。