本文章來給各位介紹我在使用淘寶 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);
這樣就可以解決這個問題了。