首页 >后端开发 >php教程 >php中关于json_decode无法解析特殊问号字符的解决

php中关于json_decode无法解析特殊问号字符的解决

黄舟
黄舟原创
2017-10-26 10:00:112043浏览

 在通过别人接口请求信息的时候,偶尔会遇到由于部分字符,如以下情况,则通过json_decode是会返回null的

但是这种情况通常不是由于整体编码的问题,因为在解析的时候就是以utf-8的编码解析的

 这种情况通常会是中英文并存,但是部分空白字符无法识别。

 通过对系统逻辑的观察,应该是由于前段保存字符的时候出现了非utf-8能够识别的字符,这种情况在json_encode中并不受影响,所以直接导致了接口获取数据的时候出现非法字符

 解决方案:


$return_data=mb_convert_encoding($return_data, "UTF-8","UTF-8");

对通过curl请求回来的字符在进行一次强制编码,这种情况下原本的utf-8编码的文字不会受到影响,同时utf-8无法识别的字符将会被强制解析,解析出来之后的字符就会变成英文符号的?

这样就能够顺利的json_decode 了

以上是php中关于json_decode无法解析特殊问号字符的解决的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn