PHP menyediakan fungsi json_decode() untuk menyahkod rentetan JSON dan menukarnya kepada struktur data PHP. Mari kita gali cara untuk mengakses hasil:
Akses harta objek:
Sifat objek boleh diakses melalui $object->property Contohnya:
$json = '{"type": "donut", "name": "Cake"}'; $yummy = json_decode($json); echo $yummy->type; // "donut"
Akses elemen tatasusunan:
Elemen tatasusunan boleh diakses melalui $array[0] Contohnya:
$json = '["Glazed", "Chocolate with Sprinkles", "Maple"]'; $toppings = json_decode($json); echo $toppings[1]; // "Chocolate with Sprinkles"
Akses item bersarang:
Item bersarang boleh diakses melalui atribut dan indeks berturut-turut, seperti tatasusunan $object-> ->dsb. :
$json = '{"type": "donut", "name": "Cake", "toppings": [{"id": "5002", "type": "Glazed"}]}'; $yummy = json_decode($json); echo $yummy->toppings[0]->id; // "5002"
Tukar kepada tatasusunan bersekutu:
Pas benar sebagai parameter kedua json_decode() untuk menukar JSON Objek dinyahkodkan kepada tatasusunan bersekutu yang kuncinya ialah rentetan:
$json = '{"type": "donut", "name": "Cake"}'; $yummy = json_decode($json, true); echo $yummy['type']; // "donut"
Mengakses item tatasusunan bersekutu:
boleh dilakukan melalui foreach (array_expression sebagai $key => nilai $) Kekunci lintasan dan nilai:
$json = '{"foo": "foo value", "bar": "bar value", "baz": "baz value"}'; $assoc = json_decode($json, true); foreach ($assoc as $key => $value) { echo "The value of key '$key' is '$value'" . PHP_EOL; }
Output:
The value of key 'foo' is 'foo value' The value of key 'bar' is 'bar value' The value of key 'baz' is 'baz value'
Struktur data tidak diketahui:
Jika anda tidak tahu struktur data , sila rujuk dokumentasi berkaitan atau gunakan print_r() Semak keputusan:
print_r(json_decode($json));
json_decode() mengembalikan null:
Ini berlaku apabila JSON batal atau tidak sah. Gunakan json_last_error_msg() untuk menyemak mesej ralat.
Nama atribut aksara khas:
Gunakan {"@attributes":{"answer":42}} untuk mengakses nama atribut dengan aksara khas:
$json = '{"@attributes":{"answer":42}}'; $thing = json_decode($json); echo $thing->{'@attributes'}->answer; //42
Atas ialah kandungan terperinci Bagaimanakah Saya Mengakses Data daripada JSON Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!