Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mendapatkan lajur daripada tatasusunan dua dimensi php

Bagaimana untuk mendapatkan lajur daripada tatasusunan dua dimensi php

PHPz
PHPzasal
2023-04-23 09:08:341009semak imbas

PHP ialah bahasa pengaturcaraan popular yang sering digunakan untuk pembangunan web. Dalam PHP, tatasusunan ialah jenis data yang sangat praktikal yang digunakan secara meluas dalam banyak senario. Tatasusunan dua dimensi ialah jenis tatasusunan khas yang terdiri daripada pelbagai tatasusunan, setiap satu mengandungi bilangan elemen tetap. Biasanya, setiap tatasusunan mewakili baris dan setiap elemen mewakili lajur dalam baris itu. Apabila anda perlu mendapatkan semula lajur tertentu daripada tatasusunan dua dimensi, anda boleh menggunakan pelbagai fungsi dan teknik yang disediakan oleh PHP untuk mencapai ini.

Kaedah 1: Gunakan gelung foreach

Menggunakan gelung foreach untuk melintasi tatasusunan dua dimensi ialah cara yang mudah dan langsung. Semasa gelung, anda boleh menggunakan subskrip tatasusunan untuk mendapatkan semula lajur tertentu dalam setiap tatasusunan. Sebagai contoh, program berikut menunjukkan cara untuk mendapatkan semula lajur tertentu daripada tatasusunan dua dimensi. Tatasusunan mempunyai dua baris, masing-masing mewakili "nama" dan "umur" Terdapat dua lajur dalam setiap baris, iaitu nama dan umur "Zhang San" dan "Li Si".

$students = array(
    array("name" => "张三", "age" => 18),
    array("name" => "李四", "age" => 20)
);

foreach($students as $row){
    echo $row["name"] ."的年龄是:".$row["age"]."<br>";
}

Dalam atur cara di atas, tatasusunan $students dilalui menggunakan gelung foreach. Dalam setiap gelung, $row mengandungi elemen tatasusunan semasa, tatasusunan bersekutu yang mengandungi lajur "nama" dan "umur". Subskrip "nama" dan "umur" masing-masing mewakili dua lajur dalam tatasusunan Anda boleh menggunakan $row["name"] dan $row["age"] masing-masing untuk mendapatkan kedua-dua lajur ini.

Kaedah 2: Gunakan fungsi array_column

Fungsi array_column ialah fungsi yang disediakan oleh PHP untuk mendapatkan lajur yang ditentukan dalam tatasusunan berbilang dimensi. Fungsi ini memerlukan dua parameter Parameter pertama ialah tatasusunan asal lajur untuk diambil, dan parameter kedua menentukan nama (subskrip) lajur untuk diambil.

Atur cara berikut menunjukkan cara menggunakan fungsi array_column untuk mendapatkan lajur tertentu daripada tatasusunan dua dimensi. Tatasusunan ini adalah sama dengan tatasusunan $pelajar dalam atur cara di atas. Lajur yang perlu dikeluarkan ialah lajur "nama".

$names = array_column($students, "name");
print_r($names);

Dalam atur cara di atas, lajur "nama" dikeluarkan daripada tatasusunan $students menggunakan fungsi array_column dan kemudian disimpan dalam tatasusunan $names. Hasil daripada mencetak tatasusunan $names ialah:

Array ( [0] => 张三 [1] => 李四 )

Kaedah 3: Gunakan fungsi array_map

fungsi array_map ialah satu lagi fungsi PHP yang sangat berguna, yang boleh menukar satu atau lebih tatasusunan menjadi The elemen dihantar ke fungsi panggil balik dan nilai pulangan fungsi disimpan dalam tatasusunan baharu.

Atur cara berikut menunjukkan cara menggunakan fungsi array_map untuk mendapatkan lajur tertentu daripada tatasusunan dua dimensi. Tatasusunan ini adalah sama dengan tatasusunan $pelajar dalam atur cara di atas. Lajur yang perlu dikeluarkan ialah lajur "umur".

$ages = array_map(function($row) { return $row['age']; }, $students);
print_r($ages);

Dalam program di atas, fungsi tanpa nama digunakan untuk mendapatkan lajur "umur" daripada tatasusunan $students. Gunakan fungsi array_map untuk mengulangi tatasusunan $pelajar, mengeluarkan satu baris data daripada tatasusunan pada satu masa, kemudian memanggil fungsi tanpa nama untuk mengeluarkan lajur "umur" dalam baris itu, dan akhirnya menyimpan hasilnya dalam $ susunan umur. Hasil daripada mencetak tatasusunan $ages ialah:

Array ( [0] => 18 [1] => 20 )

Ringkasan

Di atas ialah tiga kaedah mengekstrak lajur daripada tatasusunan dua dimensi PHP. Antaranya, menggunakan gelung foreach adalah kaedah yang paling asas, dan ia juga sangat mudah difahami dan dikuasai menggunakan fungsi array_column boleh dengan cepat mengeluarkan semua nilai lajur yang ditentukan dan menyimpannya dalam tatasusunan baharu; ; dan menggunakan fungsi array_map adalah sangat fleksibel, anda boleh dengan mudah memanggil fungsi panggil balik tersuai untuk memproses lajur tertentu dalam setiap baris data. Bergantung pada situasi, anda boleh memilih kaedah yang paling sesuai untuk anda memproses lajur dalam tatasusunan dua dimensi.

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan lajur daripada tatasusunan dua dimensi 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