时间:2021-07-01 10:21:17 帮助过:25人阅读
用PHP的json_encode来处理中文的时候, 中文都会被编码, 变成不可读的, 类似”\u***”的格式, 还会在一定程度上增加传输的数据量。
echo json_encode("中文");
//"\u4e2d\u6587"
在PHP5.4之前的版本,我们只能通过编写函数实现:
functionjson_encode_cn($data) {$data = json_encode ( $data );
return preg_replace ( "/\\\u([0-9a-f]{4})/ie", "iconv('UCS-2BE', 'UTF-8', pack('H*', '$1'));", $data );
}
而PHP5.4之后,Json新增了一个选项: JSON_UNESCAPED_UNICODE,故名思议,就是说Json不要编码Unicode:
echo json_encode("中文", JSON_UNESCAPED_UNICODE);
//"中文"
版权声明:本文为博主原创文章,未经博主允许不得转载。
以上就介绍了PHP中使用json_encode处理中文,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。