Dalam PHP, selalunya diperlukan untuk memproses dan mengendalikan tatasusunan. Kadangkala, anda perlu mendapatkan lajur data tertentu daripada tatasusunan berbilang dimensi Dalam kes ini, anda boleh menggunakan fungsi array_column() untuk mencapai ini. Artikel ini akan memperkenalkan penggunaan fungsi array_column() secara terperinci.
1. Apakah fungsi array_column()
array_column() ialah fungsi PHP yang digunakan untuk mendapatkan lajur data daripada tatasusunan berbilang dimensi. Fungsi ini telah diperkenalkan dalam PHP 5.5 dan menyokong tatasusunan bersekutu dan tatasusunan diindeks.
Prototaip fungsi:
array_column ( array $array , mixed $column_key [, mixed $index_key = null ] ) : array
Parameter description:
$array: array multi-dimensi yang akan dikendalikan
_column: lajur untuk diperolehi Nama atau nilai kunci
$index_key: parameter pilihan, jika nilai ini ditentukan, ia akan digunakan sebagai nama kunci tatasusunan yang dikembalikan.
2. Contoh penggunaan
Mari kita lihat beberapa contoh penggunaan fungsi array_column().
Katakan kami mempunyai tatasusunan indeks $pengguna, yang menyimpan beberapa maklumat pengguna, dan kami ingin mendapatkan nama semua pengguna daripadanya. Ini boleh dicapai melalui kod berikut:
$users = array(0 => array('id'=>1, 'name'=>'Tom', 'email'=>'tom@example.com'), 1 => array('id'=>2, 'name'=>'Jerry', 'email'=>'jerry@example.com'), 2 => array('id'=>3, 'name'=>'Mike', 'email'=>'mike@example.com')); $names = array_column($users, 'name'); print_r($names);
Hasil output ialah:
Array ( [0] => Tom [1] => Jerry [2] => Mike )
Jika tatasusunan kami ialah tatasusunan bersekutu, kami boleh mendapatkan lajur data yang ditentukan dengan cara yang sama.
Sebagai contoh, kami mempunyai tatasusunan $pelajar bersekutu, yang mengandungi beberapa maklumat tentang pelajar Kami ingin mendapatkan umur semua pelajar:
$students = array('Tom' => array('age'=>20, 'gender'=>'male', 'city'=>'Beijing'), 'Jerry' => array('age'=>21, 'gender'=>'female', 'city'=>'Shanghai'), 'Mike' => array('age'=>19, 'gender'=>'male', 'city'=>'Guangzhou')); $ages = array_column($students, 'age'); print_r($ages);
Hasil keluarannya ialah:
Array ( [Tom] => 20 [Jerry] => 21 [Mike] => 19 )
Jika kita mahu Untuk mendapatkan berbilang nilai kunci daripada tatasusunan berbilang dimensi, anda boleh meletakkan nama kunci yang akan diperolehi dalam tatasusunan dan menghantarnya ke dalam fungsi array_column() sebagai parameter kedua.
Sebagai contoh, kami mempunyai tatasusunan $temperatures yang mengandungi data suhu untuk berbilang bandar. Tentukan pulangan Nama kunci tatasusunan
Kadangkala, kami ingin menentukan nama kunci tatasusunan yang dikembalikan apabila mendapatkan data lajur yang ditentukan. Boleh ditentukan dalam parameter ketiga fungsi array_column().$temperatures = array( array('city'=>'Beijing', 'average'=>20, 'highest'=>28), array('city'=>'Shanghai', 'average'=>23, 'highest'=>30), array('city'=>'Guangzhou', 'average'=>25, 'highest'=>32) ); $infos = array_column($temperatures, array('average', 'highest'), 'city'); print_r($infos);
Array ( [Beijing] => Array ( [average] => 20 [highest] => 28 ) [Shanghai] => Array ( [average] => 23 [highest] => 30 ) [Guangzhou] => Array ( [average] => 25 [highest] => 32 ) )
Atas ialah kandungan terperinci Penjelasan terperinci tentang penggunaan fungsi array_column() PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!