在通过别人接口请求信息的时候,偶尔会遇到由于部分字符,如以下情况,则通过json_decode是会返回null的
但是这种情况通常不是由于整体编码的问题,因为在解析的时候就是以utf-8的编码解析的
这种情况通常会是中英文并存,但是部分空白字符无法识别。
通过对系统逻辑的观察,应该是由于前段保存字符的时候出现了非utf-8能够识别的字符,这种情况在json_encode中并不受影响,所以直接导致了接口获取数据的时候出现非法字符
立即学习“PHP免费学习笔记(深入)”;
解决方案:
$return_data=mb_convert_encoding($return_data, "UTF-8","UTF-8");
对通过curl请求回来的字符在进行一次强制编码,这种情况下原本的utf-8编码的文字不会受到影响,同时utf-8无法识别的字符将会被强制解析,解析出来之后的字符就会变成英文符号的? ,
这样就能够顺利的json_decode 了
以上就是PHP json_decode 无法解析特殊问号字符的方法的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号