Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Penjelasan terperinci tentang penggunaan fungsi array_column() PHP

Penjelasan terperinci tentang penggunaan fungsi array_column() PHP

PHPz
PHPzasal
2023-06-27 12:58:485414semak imbas

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().

  1. Tatasusunan indeks

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
)
  1. Tatasusunan bersekutu

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
)
  1. Dapatkan berbilang nilai utama
.

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().
  1. Sebagai contoh, dalam contoh sebelumnya, kami berharap untuk menggunakan "suhu purata" dan "suhu maksimum" sebagai nama utama tatasusunan yang dikembalikan Kami boleh menulis seperti ini:
  2. $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);
Hasil output ialah:

Array (
    [Beijing] => Array (
        [average] => 20
        [highest] => 28
    )
    [Shanghai] => Array (
        [average] => 23
        [highest] => 30
    )
    [Guangzhou] => Array (
        [average] => 25
        [highest] => 32
    )
)

3. . Kesimpulan

array_column( ) fungsi boleh mendapatkan lajur data tertentu daripada tatasusunan berbilang dimensi, dan kaedah penggunaannya mudah dan jelas. Dalam pembangunan sebenar, kita boleh menggunakan sepenuhnya fungsi ini untuk meningkatkan kecekapan dan ketepatan pemprosesan tatasusunan.

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!

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