首頁 >後端開發 >php教程 >如何使用 json_decode() 正確地將 JSON 解碼為陣列?

如何使用 json_decode() 正確地將 JSON 解碼為陣列?

Linda Hamilton
Linda Hamilton原創
2024-12-29 17:04:17496瀏覽

How Can I Properly Decode JSON into an Array Using `json_decode()`?

處理謎題:使用json_decode() 建立數組

遇到錯誤“致命錯誤:無法使用stdClass 類型的物件作為數組” ” 嘗試將JSON 解碼為數組時表示一個常見的誤解。json_decode()預設會建立一個對象,但可以透過將第二個參數指定為 true來取得陣列。方案:

要解決此問題,我們只需提供true 作為json_decode() 的第二個參數,指定我們對關聯數組而不是物件的偏好。一旦有了關聯數組,就可以使用方括號存取其值:

整數鍵數組:
$json_string = 'http://www.example.com/jsondata.json';

$jsondata = file_get_contents($json_string);
$obj = json_decode($jsondata);
print_r($obj['Result']);

但是,如果您喜歡整數鍵而不是屬性名稱,則可以透過利用array_values() 來實現此目的:

物件方法:
$result = json_decode($jsondata, true);

如果您希望維護物件結構,您仍然可以使用雙箭頭存取所需的屬性運算子:

以上是如何使用 json_decode() 正確地將 JSON 解碼為陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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