Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengekstrak lajur sifat daripada susunan objek dalam PHP?

Bagaimana untuk mengekstrak lajur sifat daripada susunan objek dalam PHP?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-20 09:02:30488semak imbas

How to Extract a Column of Properties from an Array of Objects in PHP?

PHP: Mengekstrak Lajur Sifat Daripada Susunan Objek dengan Cekap

Banyak senario pengaturcaraan melibatkan kerja dengan tatasusunan objek, di mana setiap objek mungkin mempunyai beberapa sifat. Kadangkala, ia menjadi perlu untuk mengekstrak sifat tertentu daripada setiap objek untuk membentuk tatasusunan yang berasingan. Dalam PHP, mencapai matlamat ini dalam satu baris, tanpa menggunakan gelung atau fungsi luaran, boleh menjadi rumit.

Satu pendekatan yang berpotensi ialah menggunakan fungsi array_walk() bersama-sama dengan create_function. Walau bagaimanapun, penyelesaian yang lebih mudah dan elegan tersedia dalam PHP 7.0 dan lebih baru.

array_column() to the Rescue

Fungsi array_column() telah diperkenalkan dalam PHP 7.0 dan membolehkan anda mengekstrak lajur data tertentu daripada tatasusunan atau tatasusunan objek. Hanya masukkan tatasusunan objek anda sebagai parameter pertama dan nama sifat yang dikehendaki sebagai parameter kedua:

<code class="php">$idCats = array_column($cats, 'id');</code>

Dalam contoh ini, pembolehubah $idCats kini akan mengandungi tatasusunan ID semua objek kucing.

Nota untuk Versi PHP Sebelum 7.0

Jika anda menggunakan versi PHP lebih awal daripada 7.0, anda masih boleh menggunakan fungsi array_map():

<code class="php">$idCats = array_map(function($cat) { return $cat->id; }, $cats);</code>

Walaupun kaedah ini lebih bertele-tele, ia mencapai hasil yang sama.

Dengan memanfaatkan array_column() atau array_map(), anda boleh mengekstrak lajur sifat daripada tatasusunan dengan cekap objek dalam PHP, membolehkan anda memperkemas kod anda dan meningkatkan prestasi.

Atas ialah kandungan terperinci Bagaimana untuk mengekstrak lajur sifat daripada susunan objek 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