使用 json_decode() 從 JSON 建立陣列
在解碼 JSON 字串時,旨在取得數組而不是物件。然而,遇到錯誤訊息「Fatal error: Cannot use object of type stdClass as array」則表示方法不正確。
提供的程式碼:
$json_string = 'http://www.example.com/jsondata.json'; $jsondata = file_get_contents($json_string); $obj = json_decode($jsondata); print_r($obj['Result']);
預設執行基於物件的解碼。若要修正此問題並產生數組,應將 json_decode() 中的第二個參數設為 true。
$result = json_decode($jsondata, true);
此操作傳回關聯陣列。
或者,您可以將使用關聯數組到數字索引數組array_values().
$result = array_values(json_decode($jsondata, true));
但是,如果您喜歡基於物件的方法,請直接透過點表示法存取屬性。
print_r($obj->Result);
以上是如何在 PHP 中正確將 JSON 解碼為陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!