PHP json_decode 没法解析特殊问号字符

 

在经过别人接口请求信息的时候,偶尔会遇到因为部分字符,如如下状况,则经过json_decode是会返回null的php

可是这种状况一般不是因为总体编码的问题,由于在解析的时候就是以utf-8的编码解析的json

 

 

这种状况一般会是中英文并存,可是部分空白字符没法识别。curl

 

经过对系统逻辑的观察,应该是因为前段保存字符的时候出现了非utf-8可以识别的字符,这种状况在json_encode中并不受影响,因此直接致使了接口获取数据的时候出现非法字符编码

 

解决方案:url

 

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

  

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

这样就可以顺利的json_decode 了blog

相关文章
相关标签/搜索