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

淘宝API返回的json数据无法用json_decode的问题

程序员文章站 2022-05-10 20:27:02
...
本文章来给各位介绍我在使用淘宝 API 返回的json数据无法用json_decode的问题的一些解决办法介绍,大家可参考。

如题,这个问题困扰我已久。。。经过自己的多次尝试,和到网上搜索,我已大概猜测到是字符的问题,论坛上的朋友说,PHP的json_decode对json数据要求非常严格,必须是{“key”:”value”}的双引号包围才行,而且,对一些特殊符号不兼容。。。例如UTF-8的 BOM头,或者是C++字符的结束符等等。。。

经过排查,我发现。。。淘宝API返回的json数据(特别是taobao.taobaoke.items.detail.get),之所以json_decode后,结果为null,原因就是返回的数据含有回车符。。。这可能是一些店主在装修时,或者填写店铺描述,商品描述不规范所留下的。。。所以用

代码如下 复制代码

$json = str_replace(array(“rn”,”n”,”r”,”t”,chr(9),\n),”,$json );
$json = json_decode($json,true);

这样就可以解决这个问题了。