最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
php高版本JSON_UNESCAPED_UNICODE解决json中文问题
时间:2016-04-27 编辑:简简单单 来源:一聚教程网
php使用json_encode中文会被编码,开发人员真的恼怒了,如果你用php 5.4版本可以避免这个问题:
//这样的不好之处是添加了传输数据的数量
echo json_encode('PHP点点通'); //"PHP\u70b9\u70b9\u901a"
//如果你用PHP 5.4,那么恭喜你,json可以便面unicode编码
echo json_encode('PHP点点通', JSON_UNESCAPED_UNICODE);
更高级点的例子
if (version_compare(PHP_VERSION, '5.4.0', '<')) {
$json = json_encode($data);
$json = preg_replace_callback("#\\\u([0-9a-f]{4})#i", function ($matches) {
return iconv('UCS-2BE', 'UTF-8', pack('H4', $matches[1]));
}, $json);
if ('' != $callback) {
echo $callback . '(' . $json . ");\n";
} else {
echo $json . "\n";
}
} else {
$json = json_encode($data, JSON_UNESCAPED_UNICODE);
}
总得来讲例子一与例子二我们如果不确定自己的php版本可以使用例子二来进行判断php版本,根据不同版本给出不同的解决程序。
相关文章
- php5.4中JSON_UNESCAPED_UNICODE让Json更懂中文 02-08
- php json_encode utf-8中文问题 01-07
- php中json_encode格式中文问题解决方法 08-28
- PHP导出数据超时的优化建议解读 10-31
- PHP之mysql位运算解析 10-31
- Laravel实现登录跳转功能解析 10-31