Dalam pembangunan PHP, kami sering menggunakan penukaran antara tatasusunan objek dan tatasusunan biasa, terutamanya apabila memproses data, penukaran ini sangat biasa. Oleh itu, artikel ini akan menerangkan cara menukar tatasusunan objek PHP kepada tatasusunan biasa.
Dalam PHP, tatasusunan objek merujuk kepada tatasusunan yang terdiri daripada objek, manakala tatasusunan biasa merujuk kepada tatasusunan yang terdiri daripada jenis data asas. Tatasusunan objek biasanya dikembalikan oleh hasil pertanyaan pangkalan data, terutamanya apabila menggunakan rangka kerja ORM Rangka kerja ORM akan merangkum data dalam pangkalan data ke dalam tatasusunan objek.
Penukaran antara tatasusunan objek dan tatasusunan biasa adalah sangat mudah dan boleh dilakukan menggunakan fungsi terbina dalam dalam PHP. Di bawah kami akan menerangkan langkah demi langkah bagaimana untuk menukar.
Dalam PHP, terdapat dua fungsi terbina dalam yang boleh melengkapkan penukaran antara tatasusunan objek dan tatasusunan biasa:
Kita boleh menukar tatasusunan objek kepada tatasusunan biasa melalui fungsi get_object_vars(). Fungsi ini mengambil parameter objek dan mengembalikan tatasusunan sifat bersekutu. Berikut ialah contoh kod menggunakan fungsi get_object_vars():
class Person { public $name = "John"; public $age = 25; private $password = "123456"; public function showDetails() { echo $this->name . " is " . $this->age . " years old \n"; } } $person1 = new Person(); $person2 = new Person(); $person2->name = "Jessica"; $person2->age = 30; $personArray1 = get_object_vars($person1); $personArray2 = get_object_vars($person2); print_r($personArray1); print_r($personArray2);
Output:
Array ( [name] => John [age] => 25 ) Array ( [name] => Jessica [age] => 30 )
Seperti yang anda lihat, selepas menggunakan fungsi get_object_vars(), kami berjaya menukar tatasusunan objek menjadi tatasusunan biasa.
Selain menggunakan fungsi get_object_vars(), kita juga boleh menggunakan fungsi json_decode() untuk menukar tatasusunan objek menjadi tatasusunan biasa. Fungsi ini menerima parameter rentetan JSON dan mengembalikan tatasusunan PHP standard. Berikut ialah contoh kod menggunakan fungsi json_decode():
class Person { public $name = "John"; public $age = 25; private $password = "123456"; public function showDetails() { echo $this->name . " is " . $this->age . " years old \n"; } } $person1 = new Person(); $person2 = new Person(); $person2->name = "Jessica"; $person2->age = 30; $json1 = json_encode($person1); $json2 = json_encode($person2); $personArray1 = json_decode($json1, true); $personArray2 = json_decode($json2, true); print_r($personArray1); print_r($personArray2);
Output:
Array ( [name] => John [age] => 25 ) Array ( [name] => Jessica [age] => 30 )
Selepas menggunakan fungsi json_decode(), kami juga berjaya menukar tatasusunan objek menjadi tatasusunan biasa.
Menukar tatasusunan objek PHP kepada tatasusunan biasa adalah sangat mudah, cuma gunakan fungsi get_object_vars() atau fungsi json_decode() untuk melengkapkan. Menggunakan fungsi get_object_vars() boleh terus menukar objek kepada tatasusunan, manakala menggunakan fungsi json_decode() memerlukan menukar objek kepada rentetan dalam format JSON dahulu, dan kemudian menukar rentetan itu kepada tatasusunan. Tidak kira kaedah yang digunakan, ia boleh memenuhi keperluan kita semasa memproses data.
Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan objek php kepada tatasusunan biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!