json_encode是怎样对待中文的04-20
虽说活到老学到老,但是学什么呢,遇到需要学的才能学,所以遇见就是缘分!
在工作中对接接口时,数据类型多为json数据,所以用json_encode()时候很多,也对TA进行了重新认识。基于一点,都清楚编程的起源都是西方,所以一开始计算机就不认识中文,所以在编程中中文一直受到‘歧视’的语言!
在刚接触json_encode()处理中文时,为了做到兼容最常用的方法就是先讲中文urlencode()转码,再转json,这是经验告诉自己的,但是不转码的话,直接json_encode()会出现什么情况呢?
你试过吗?
我虽然试过但是也没深究,到了接口对接时细细的品味了一番,
测试代码:
原来直接处理的话,中文变成了这种样式:
\u5317\u6f02\u8005
其实就是转化成了Unicode编码了,正常情况下,直接再使用json_decode()解析的话也是没问题的;但是如果是传递给了Java的话TA就要处理一番,但是使用JSON常量的话JSON_UNESCAPED_UNICODE,就没有这么麻烦了,不管是php还是java都是直来直去,不有过多修改了。
注意:JSON_UNESCAPED_UNICODE 支持php5.4以上版本
JSON常量参考:http://php.net/manual/zh/json.constants.php
相关文章:
,请先登录查看所有评论- WAMP的安装配置之PHP 2015-07-07
- Notepad++ 2015-07-06
- PHP抓取页面 2015-07-01
- 论述中认识PHP-FPM 2015-06-29
- stream_socket_enable_crypto(): this stream does not support SSL/crypto 2015-06-10