>백엔드 개발 >PHP 튜토리얼 >json 数据返回 ,json_decode 之后为空

json 数据返回 ,json_decode 之后为空

WBOY
WBOY원래의
2016-06-23 14:39:441402검색

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

无广告加载快的工具

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.