关于​PHP json_decode中文转义的问题-PHP问题

资源魔 22 0

php json decode本义的应用办法:起首应用语句“json_encode($a, JSON_UNESCAPED_UNICODE);”把非凡字符进行本义;而后经过该函数的第二个参数限度本义范畴便可。

保举:《PHP视频教程》

PHP json_decode中文本义的成绩

默许状况下PHP的 json_decode 办法会把非凡字符进行本义,还会把中文转为Unicode编码方式。正在有些状况下没有心愿进行这类本义。

关于PHP5.4+版本,json_decode函数第二个参数,能够用来限度本义范畴。要限度中文,应用JSON_UNESCAPED_UNICODE参数。

json_encode($a, JSON_UNESCAPED_UNICODE);

关于PHP5.3及之前版本,能够用以下形式转回中文:

$originstr = '{"name":"张三"}';
$jsonobject = json_decode($originstr);
// badstr: {"name":"\u5f20\u4e09"}
$badstr = json_encode($jsonobject);
// goodstr: {"name":"张三"} 
$goodstr = preg_replace_callback("#\\\u([0-9a-f]{4})#i", function($matches){
  return iconv('UCS-2', 'UTF-8', pack('H4', $matches[1]));
  }, $badstr);

以上就是对于​PHP json_decode中文本义的成绩的具体内容,更多请存眷资源魔其它相干文章!

标签: php php教程 php故障解决 php使用问题 转义

抱歉,评论功能暂时关闭!