2017-02-20 24 views
-1

我JSON數組從APIPHP的JSON解碼布爾(真)

$json_array = curl_exec($curl); 
var_dump($json_array); 
echo '<br>'.mb_detect_encoding($json_array);` 

{"code":"TEXT","name":"/generic/PRODUCT","desc":"/generic/PRODUCT_DESC","productCategory":"/market/prodcats/"}bool(true) 

ASCII

echo '<pre>'; print_r(json_decode($json_array)); 

返回同一陣列不能解碼返回。任何建議可能是什麼?

json_last_error();

調用未定義功能json_last_error()在/var/www/index.php在線59

+0

您需要將可選參數'TRUE'傳遞給'json_decode()'返回一個數組。 – Kisaragi

+0

您可能希望將'CURLOPT_RETURNTRANSFER'設置爲true以將響應捕獲到變量中,而不是將其打印到屏幕上。 –

+1

Jeff Puckett II非常感謝:) – ekavet

回答

0

默認情況下json_decode函數返回stdClass的,如果你想要一個數組,你應該發送的第二個參數等於TRUE 。

$json_array = curl_exec($curl); 
var_dump($json_array); 
echo '<pre>'; print_r(json_decode($json_array,TRUE)); 
+0

no 4EACH,事實並非如此,Jeff Puckett已經解釋了問題所在。響應沒有設置爲變量,這就是爲什麼我不能將其轉換爲PHP數組或stdClass對象。 – ekavet