PHP json_decode 无法解析特殊问号字符的方法

一个新手
一个新手 原创
2023-03-16 18:54:02 1680浏览

在通过别人接口请求信息的时候,偶尔会遇到由于部分字符,如以下情况,则通过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核实处理。