Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php menukar objek kepada objek tatasusunan

php menukar objek kepada objek tatasusunan

王林
王林asal
2023-05-11 09:49:06546semak imbas

Dalam PHP, kita biasanya perlu menghantar dan memproses data. Apabila memproses data, kita perlu menukar objek kepada objek tatasusunan. PHP menyediakan kaedah yang sangat mudah untuk ini.

Dalam PHP, kita boleh menggunakan fungsi get_object_vars untuk menukar objek kepada objek tatasusunan. Fungsi ini menerima objek sebagai parameter dan mengembalikan tatasusunan yang mengandungi semua pembolehubah ahli objek dan nilai sepadannya.

Berikut ialah contoh penggunaan fungsi get_object_vars untuk menukar objek kepada objek tatasusunan:

class Person {
    public $name = "John";
    public $age = 30;
    private $gender = "Male";
}

$person = new Person();

$array = get_object_vars($person);

print_r($array);

Hasil keluaran:

Array
(
    [name] => John
    [age] => 30
)

Seperti yang dapat dilihat daripada kod di atas, kami menggunakan fungsi get_object_vars menukar contoh Person kelas $person kepada tatasusunan $array. Tatasusunan $array mengandungi pembolehubah ahli name dan age serta nilai yang sepadan.

Perlu diambil perhatian bahawa nilai pembolehubah ahli persendirian kelas tidak boleh diperoleh menggunakan fungsi get_object_vars. Dalam contoh di atas, nilai pembolehubah ahli persendirian gender tidak ditukar kepada elemen dalam tatasusunan.

Jika anda perlu mendapatkan pembolehubah ahli persendirian kelas, kami boleh menggunakan fungsi __get dalam sintaks kawalan akses PHP. Fungsi ini digunakan untuk mendapatkan pembolehubah ahli persendirian objek dan nilai sepadannya.

Berikut ialah contoh menggunakan fungsi __get untuk menukar pembolehubah ahli persendirian objek kepada objek tatasusunan:

class Person {
    public $name = "John";
    public $age = 30;
    private $gender = "Male";

    public function __get($property) {
        if (property_exists($this, $property)) {
            return $this->$property;
        }
    }
}

$person = new Person();

$array = array();

foreach ($person as $key => $value) {
    $array[$key] = $value;
}

print_r($array);

Hasil keluaran:

Array
(
    [name] => John
    [age] => 30
    [gender] => Male
)

Sebagai anda boleh lihat daripada kod Out di atas, kami menggunakan fungsi __get untuk mendapatkan nilai pembolehubah ahli persendirian $person objek gender dan menambahnya pada tatasusunan $array. Akhirnya, kami mencetak kandungan tatasusunan $array, dan kami dapat melihat bahawa nilai pembolehubah ahli persendirian gender juga berjaya ditukarkan kepada unsur tatasusunan.

Ringkasan:

Dalam PHP, kita boleh menggunakan fungsi get_object_vars untuk menukar objek kepada objek tatasusunan. Fungsi ini boleh mendapatkan pembolehubah ahli awam objek dan nilai sepadannya dengan mudah. Tetapi jika kita perlu mendapatkan nilai pembolehubah ahli persendirian objek, kita perlu menggunakan fungsi __get dalam sintaks kawalan akses PHP untuk mencapainya.

Atas ialah kandungan terperinci php menukar objek kepada objek tatasusunan. 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