Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menukar tatasusunan rentetan json kepada tatasusunan objek dalam php
Dalam PHP, kita selalunya perlu menukar tatasusunan rentetan JSON kepada tatasusunan objek supaya kami boleh memproses dan menggunakan data tersebut. Untuk melaksanakan tugas ini, kita boleh menggunakan fungsi json_decode() yang disediakan dalam PHP untuk menghuraikan rentetan JSON dan kemudian menukarnya menjadi tatasusunan objek.
Berikut ialah contoh untuk menukar tatasusunan rentetan JSON kepada tatasusunan objek.
$json = '[ {"name": "Alice", "age": 25}, {"name": "Bob", "age": 30}, {"name": "Charlie", "age": 35} ]'; $people = json_decode($json); foreach ($people as $person) { echo $person->name . ' is ' . $person->age . ' years old.' . PHP_EOL; }
Dalam contoh ini, kita mula-mula menentukan tatasusunan rentetan JSON. Kemudian, kami memanggil fungsi json_decode() untuk menukarnya kepada objek PHP. Akhir sekali, kami menggunakan gelung foreach untuk melelaran melalui tatasusunan objek dan mengeluarkan nama dan umur setiap orang.
Perlu diambil perhatian bahawa fungsi json_decode() menghuraikan rentetan JSON ke dalam objek PHP, yang boleh menjadi objek tanpa nama jenis stdClass atau objek kelas tertentu. Untuk contoh ini, kerana kami tidak menyatakan jenis objek yang akan dihuraikan rentetan JSON, ia akan dihuraikan ke dalam objek jenis stdClass secara lalai.
Jika kita ingin menghuraikan rentetan JSON ke dalam objek kelas tertentu, kita boleh melakukannya dengan menghantar parameter kedua ke fungsi json_decode(). Sebagai contoh, kita boleh mentakrifkan kelas Orang untuk mewakili maklumat setiap orang, dan kemudian menghuraikan rentetan JSON ke dalam tatasusunan objek Orang, seperti yang ditunjukkan di bawah:
class Person { public $name; public $age; public function __construct($name, $age) { $this->name = $name; $this->age = $age; } } $json = '[ {"name": "Alice", "age": 25}, {"name": "Bob", "age": 30}, {"name": "Charlie", "age": 35} ]'; $people = json_decode($json, false); $personObjects = array(); foreach($people as $person) { $personObjects[] = new Person($person->name, $person->age); } foreach ($personObjects as $person) { echo $person->name . ' is ' . $person->age . ' years old.' . PHP_EOL; }
Dalam contoh ini, kita mula-mula mentakrifkan nama Untuk kelas Orang, ia mengandungi sifat nama dan umur serta pembina. Seterusnya, kami menghuraikan rentetan JSON ke dalam tatasusunan objek dan menukarnya menjadi tatasusunan objek Orang. Akhir sekali, kami menggunakan gelung foreach untuk mengeluarkan nama dan umur setiap orang.
Ringkasnya, menukar tatasusunan rentetan JSON kepada tatasusunan objek ialah salah satu operasi biasa dalam PHP. Kita boleh menggunakan fungsi json_decode() untuk menyelesaikan tugas ini, dan kita boleh menentukan jenis objek yang hendak dihuraikan dengan menghantar parameter kedua. Selepas menyelesaikan tugasan ini, kami boleh menggunakannya untuk memproses data, mengendalikan dan menggunakannya.
Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan rentetan json kepada tatasusunan objek dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!