Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengakses Elemen Bersarang dalam Objek JSON menggunakan json_decode() PHP?

Bagaimana untuk Mengakses Elemen Bersarang dalam Objek JSON menggunakan json_decode() PHP?

Linda Hamilton
Linda Hamiltonasal
2024-11-20 04:02:01151semak imbas

How to Access Nested Elements in a JSON Object using PHP's json_decode()?

Menghuraikan Objek JSON dalam PHP menggunakan json_decode

Masalah

Mengakses elemen tertentu daripada objek JSON bersarang yang diterima daripada perkhidmatan web terbukti mencabar. Kod permintaan awal gagal mendapatkan dan memaparkan nilai ikon cuaca.

$json = file_get_contents('http://example.com/data.json');
$data = json_decode($json, TRUE);
echo $data[0]->weather->weatherIconUrl[0]->value;

Penyelesaian

Isu telah diselesaikan dengan menghuraikan respons JSON dengan tepat. Berikut ialah versi semakan kod yang berjaya mendapatkan semula nilai ikon cuaca:

$json = file_get_contents('http://example.com/data.json');
$data = json_decode($json, true);

echo $data['data']['weather'][0]['weatherIconUrl'][0]['value'];

Penjelasan

Kunci untuk mengakses objek JSON bersarang ialah menggunakan sintaks tatasusunan dan bukannya sintaks anak panah. Dengan menetapkan parameter kedua json_decode() kepada benar, output ditukar kepada tatasusunan bersekutu. Ini membolehkan kami menggunakan sintaks tatasusunan untuk mengakses elemen bersarang:

  • $data['data'] mendapatkan semula tatasusunan data daripada objek JSON peringkat atas.
  • $data ['data']['weather'] mengambil tatasusunan cuaca dari dalam tatasusunan data.
  • $data['data']['weather'][0] memilih item pertama dalam tatasusunan cuaca.
  • $data['data']['weather'][0]['weatherIconUrl'] memperoleh tatasusunan weatherIconUrl dari dalam item cuaca pertama.
  • $data['data'] ['weather'][0]['weatherIconUrl'][0] akhirnya mendapatkan semula nilai elemen pertama dalam tatasusunan weatherIconUrl.

Dengan mengikuti langkah ini, anda boleh menghuraikan dan mengakses khusus dengan berkesan elemen daripada objek JSON bersarang dalam PHP menggunakan json_decode().

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Elemen Bersarang dalam Objek JSON menggunakan json_decode() PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn