首页 > 代码库 > PHP输出json数据时,中文不进行unicode编码

PHP输出json数据时,中文不进行unicode编码

今天在写和API接口时,将PHP数组转成json,但是有个规则是不能用unicode编码

试了几种方法:

  1. 若PHP是5.4以上的 可以直接使用JSON_UNESCAPED_UNICODE参数

  json_encode(‘中文测试‘,JSON_UNESCAPED_UNICODE);

   这种方法字符串可行,但是数组不可行(有待验证)

  2.将数组中的字符串urlencode,然后将数组json_encode转成json,最后进行urldecode


注:urlencode()和urldecode()将中文字符转换为十六进制并按某种规则进行字符串组合,实现字符的编码与解编码,保证URL数据传递过程中字符的完整性和兼容性


以上方法确实对中文避免了unicode编码,但是我最后在接口测试时,依旧没通过,反而是正常的json_encode后就可以,避免误人子弟,后续我会继续考证·····

本文出自 “程序媛的必经之路” 博客,请务必保留此出处http://linlin2017.blog.51cto.com/8346821/1909343

PHP输出json数据时,中文不进行unicode编码