Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menukar tatasusunan rentetan json kepada tatasusunan objek dalam php

Bagaimana untuk menukar tatasusunan rentetan json kepada tatasusunan objek dalam php

PHPz
Lepaskan: 2023-04-23 09:36:43
asal
510 orang telah melayarinya

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;
}
Salin selepas log masuk

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;
}
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan