php中json_encode乱码的解决方法

  介绍

这篇文章主要介绍php中json_encode乱码的解决方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

解决方法:1、设置json_encode()第二个参数的值为“JSON_UNESCAPED_UNICODE”即可,2,先把文本进行urlencode转码,再使用json_encode()编码,接着进行urldecode解码即可。

 php中json_encode乱码的解决方法

json_encode()用于对变量进行JSON编码;成功则返回JSON编码的字符串,在失败时返回错误的。

在编码过程中,经常会用到json_encode来处理中文,但是,出现一个问题,中文都会被转码,变为“\ u * * * *”的格式,如何避免被转码,乱码呢?

<强>方法1:php的版本为5.4以上;

回声json_encode(& # 39;中文& # 39;);//癨 u4e2d \ u6587"   回声json_encode(& # 39;中文& # 39;,JSON_UNESCAPED_UNICODE);//爸形摹?/pre>

说明:

语法:<代码> json_encode(美元价值[$选项=0])

1,美元价值为要编码的值,且该函数只对UTF8编码的数据有效;

2,选择:由以下常量组成的二进制掩码:

JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK, JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT, JSON_PRESERVE_ZERO_FRACTION, JSON_UNESCAPED_UNICODE, JSON_PARTIAL_OUTPUT_ON_ERROR。

3,第二个参数一般不需要,

4, json数据其实就是一个字符串,可以用var_dump()打印出来看数据类型;

5,执行成功返回json数据,否则返回错误的。

<强>方法2:先把汉字urlencode转码,在json_encode;然后urldecode解码;

echo $ con=& # 39;中文& # 39;;//中文   echo $ con=urlencode (con);//% E4%B8%AD % E6 % 96% 87“   echo $ con=json_encode (con);//% E4%B8%AD % E6 % 96% 87“   echo $ con=urldecode (con);//爸形摹?/pre>

以上是php中json_encode乱码的解决方法的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

php中json_encode乱码的解决方法