欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

json 数据返回 ,json_decode 之后为空

程序员文章站 2022-04-29 11:00:33
...
http://zhidao.baidu.com/link?url=kEYMQrLi41ZyC3Yo5XoN_QEbUentL2yVvcUg3seg_ZVksV2w5KBMudlQomrizXZiEoe3Uz0xtp7Moj9nRLBLNK

我遇到的问题跟他的差不多

调用app接口,然后php接受返回json串(验证之后格式正确):返回的数据跟实际字符不相符(多三个字符),
然后把php端改成 json头 还是不管用
app返回的:
string(121) "?{"errorCode":"0","errorMsg":"success","responseData":{"uid":"36","sender_uid":"37","error":"0","error_msg":"success"}}"
json_decode ->NULL
复制到文件中的:
string(118) "{"errorCode":"0","errorMsg":"success","responseData":{"uid":"36","sender_uid":"37","error":"0","error_msg":"success"}}"

回复讨论(解决方案)

BOM头的原因吧

多的三个字符是 BOM 头,去掉就可以了
比如接收到的在 $s 中,则
$a = json_decode(substr($s, 3));

多的三个字符是 BOM 头,去掉就可以了
比如接收到的在 $s 中,则
$a = json_decode(substr($s, 3));
明天去公司了试一下

多的三个字符是 BOM 头,去掉就可以了
比如接收到的在 $s 中,则
$a = json_decode(substr($s, 3));

用了百度推送了,又找了好几个小时,原来百度一个文件带bom头,蛋疼死了!!!谢谢了

BOM头的原因吧
好了,谢谢呀


推荐一个JSON格式化工具,JSON校验工具, http://www.sojson.com

无广告加载快的工具