如何利用PHP实现json_encode时中文内容的UNICODE编码转换?
- 内容介绍
- 文章标签
- 相关推荐
本文共计346个文字,预计阅读时间需要2分钟。
使用PHP的json_encode处理中文时,中文都会被编码,变成不可读的格式,类似**。若想汉字不进行编码,以下提供三种方法:
1. 升级PHP,在PHP5.4及以上版本,这个问题已得到解决,Json新增了对中文的支持。
2.使用自定义编码函数,在json_encode前先对中文进行编码。
3.使用JSON_UNESCAPED_UNICODE标志,在json_encode函数中指定该标志,以保持中文原样输出。
用PHP的json_encode来处理中文的时候, 中文都会被编码, 变成不可读的, 类似”\u***”的格式,如果想汉字不进行转码,这里提供三种方法
1.升级PHP,在PHP5.4, 这个问题终于得以解决, Json新增了一个选项: JSON_UNESCAPED_UNICODE, 故名思议, 就是说, Json不要编码Unicode.
<?php
echo json_encode("中文", JSON_UNESCAPED_UNICODE);
//"中文"
2.把汉字先urlencode然后再使用json_encode,json_encode之后再次使用urldecode来解码,这样编码出来的json数组中的汉字就不会出现unicode编码了。
本文共计346个文字,预计阅读时间需要2分钟。
使用PHP的json_encode处理中文时,中文都会被编码,变成不可读的格式,类似**。若想汉字不进行编码,以下提供三种方法:
1. 升级PHP,在PHP5.4及以上版本,这个问题已得到解决,Json新增了对中文的支持。
2.使用自定义编码函数,在json_encode前先对中文进行编码。
3.使用JSON_UNESCAPED_UNICODE标志,在json_encode函数中指定该标志,以保持中文原样输出。
用PHP的json_encode来处理中文的时候, 中文都会被编码, 变成不可读的, 类似”\u***”的格式,如果想汉字不进行转码,这里提供三种方法
1.升级PHP,在PHP5.4, 这个问题终于得以解决, Json新增了一个选项: JSON_UNESCAPED_UNICODE, 故名思议, 就是说, Json不要编码Unicode.
<?php
echo json_encode("中文", JSON_UNESCAPED_UNICODE);
//"中文"
2.把汉字先urlencode然后再使用json_encode,json_encode之后再次使用urldecode来解码,这样编码出来的json数组中的汉字就不会出现unicode编码了。

