首頁 >後端開發 >php教程 >如何在 PHP 中正確將 JSON 解碼為陣列?

如何在 PHP 中正確將 JSON 解碼為陣列?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-27 18:35:14122瀏覽

How to Correctly Decode JSON into an Array in PHP?

使用 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn