Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menukar objek menjadi array dalam php

Bagaimana untuk menukar objek menjadi array dalam php

PHPz
PHPzasal
2023-04-23 10:21:31559semak imbas

Dalam PHP, objek dan tatasusunan ialah dua jenis data biasa. Kadangkala adalah perlu untuk menukar objek kepada tatasusunan untuk kegunaan mudah atau penyimpanan dalam pangkalan data atau log. Berikut ialah beberapa cara untuk menukar objek kepada tatasusunan:

  1. Menggunakan fungsi get_object_vars()

Fungsi get_object_vars() mengembalikan senarai sifat objek kepada associate Dikembalikan dalam bentuk tatasusunan. Anda boleh menukar objek kepada tatasusunan menggunakan kod berikut:

$obj = new MyClass();
$arr = get_object_vars($obj);
  1. Menggunakan cast

Dalam PHP, anda boleh menghantar objek ke dalam jenis tatasusunan. Ini menukar semua sifat objek kepada elemen tatasusunan. Gunakan sintaks berikut:

$arr = (array) $obj;
  1. Gunakan fungsi json_decode dan json_encode

Fungsi json_decode() boleh menukar rentetan berformat JSON kepada tatasusunan PHP. Dalam PHP, anda boleh menggunakan fungsi json_encode() untuk menukar tatasusunan kepada rentetan berformat JSON. Jadi, jika anda menukar objek kepada rentetan berformat JSON dan kemudian menukarnya kepada tatasusunan, anda boleh menggunakan kod berikut: >

Dalam PHP, anda boleh menggunakan fungsi bersiri dan penyahserikatan untuk menukar objek kepada tatasusunan. Fungsi bersiri bersiri() boleh mensirikan objek PHP menjadi rentetan yang boleh disimpan, dan fungsi unserialize() boleh menyahsiri rentetan bersiri ke dalam objek PHP. Anda boleh menggunakan kod berikut untuk menukar objek kepada tatasusunan:
$json = json_encode($obj);
$arr = json_decode($json, true);
  1. Ringkasnya, kaedah di atas boleh menukar objek kepada tatasusunan. Dalam projek sebenar, kaedah yang paling sesuai perlu dipilih berdasarkan keperluan projek. Antaranya, fungsi get_object_vars() adalah lebih sesuai untuk mendapatkan atribut objek, manakala penukaran jenis paksa dan fungsi bersiri dan penyahsirilan sesuai untuk memproses data objek berbilang dimensi. Kaedah Json_decode dan json_encode boleh menukar objek kepada tatasusunan dengan mudah dan perkara yang sama berlaku untuk data berbilang dimensi.
Perlu diambil perhatian bahawa sesetengah sifat objek mungkin peribadi atau dilindungi dan tidak boleh diperolehi melalui kaedah pemerolehan awam perlu ditambahkan pada kelas. Di samping itu, jika objek mengandungi objek lain sebagai sifat, ia perlu ditukar secara rekursif untuk mendapatkan data tatasusunan yang lengkap.

Atas ialah kandungan terperinci Bagaimana untuk menukar objek menjadi array dalam 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