PHP ialah bahasa yang sangat popular apabila ia datang untuk membangunkan aplikasi web. PHP menyediakan banyak fungsi dan pengendali untuk tatasusunan pengendalian, menjadikannya lebih mudah untuk kami memproses dan mengurus data. Dalam pembangunan sebenar, kita sering perlu menanyakan tatasusunan berbilang dimensi Perkara berikut akan memperkenalkan cara menggunakan PHP untuk menanyakan tatasusunan berbilang dimensi.
Apakah tatasusunan berbilang dimensi?
Tatasusunan berbilang dimensi merujuk kepada tatasusunan yang mengandungi berbilang tatasusunan. Dalam aplikasi pembangunan sebenar, tatasusunan berbilang dimensi sering digunakan untuk menyimpan dan mengurus data yang kompleks. Sebagai contoh, tapak web e-dagang boleh menggunakan tatasusunan berbilang dimensi untuk menyimpan maklumat pesanan Setiap pesanan mengandungi nombor pesanan, butiran pesanan, maklumat pelanggan, dsb.
Struktur tatasusunan berbilang dimensi adalah serupa dengan struktur pokok. Setiap elemen tatasusunan boleh mengandungi satu atau lebih subarray, dan setiap subarray boleh mengandungi satu atau lebih subarray. Lebih banyak lapisan terdapat dalam tatasusunan berbilang dimensi, lebih kompleks strukturnya.
Bagaimana untuk menanyakan tatasusunan berbilang dimensi?
PHP menyediakan beberapa kaedah untuk menanya tatasusunan berbilang dimensi. Dua daripada kaedah ini akan diperkenalkan di bawah: menggunakan gelung foreach dan menggunakan fungsi array_walk.
Kaedah 1: Gunakan gelung foreach
Menggunakan gelung foreach ialah kaedah tradisional untuk merentasi tatasusunan berbilang dimensi. Gelung foreach boleh mengakses setiap elemen tatasusunan satu demi satu dan melaksanakan operasi yang ditentukan. Kod berikut menunjukkan cara menggunakan gelung foreach untuk merentasi tatasusunan berbilang dimensi:
$array = array( 'fruit' => array('apple', 'banana', 'orange'), 'vegetables' => array('carrot', 'broccoli', 'celery'), 'meat' => array('chicken', 'beef', 'pork') ); foreach($array as $key => $value) { echo '<p><b>' . $key . ':</b></p>'; foreach($value as $item) { echo $item . '<br>'; } }
Dalam kod di atas, kami mentakrifkan tatasusunan berbilang dimensi yang mengandungi tiga subarray. Gelung foreach pertama digunakan untuk lelaran melalui tatasusunan utama, dan gelung foreach kedua digunakan untuk lelaran ke atas subarray dan mengeluarkan setiap elemen. Hasil output adalah seperti berikut:
fruit: apple banana orange vegetables: carrot broccoli celery meat: chicken beef pork
Kaedah 2: Gunakan fungsi array_walk
Fungsi array_walk boleh menerima tatasusunan berbilang dimensi dan melaksanakan fungsi tersuai pada setiap elemen di dalamnya. Kod berikut menunjukkan cara menggunakan fungsi array_walk untuk melintasi tatasusunan berbilang dimensi:
function output($value, $key) { if(is_array($value)) { echo '<p><b>' . $key . ':</b></p>'; array_walk($value, 'output'); } else { echo $value . '<br>'; } } $array = array( 'fruit' => array('apple', 'banana', 'orange'), 'vegetables' => array('carrot', 'broccoli', 'celery'), 'meat' => array('chicken', 'beef', 'pork') ); array_walk($array, 'output');
Dalam kod di atas, kami mentakrifkan fungsi tersuai bernama output. Fungsi ini menerima dua parameter: nilai dan kunci. Jika nilai ialah tatasusunan, maka fungsi itu memanggil dirinya secara rekursif dan mencetak kandungan subarray. Jika tidak, fungsi hanya mengeluarkan nilai.
Akhir sekali, kami mentakrifkan tatasusunan berbilang dimensi yang mengandungi tiga sub-tatasusunan dan melintasinya menggunakan fungsi array_walk. Output adalah sama dengan kaedah sebelumnya.
Ringkasan
Dalam artikel ini, kami memperkenalkan dua kaedah untuk menanya tatasusunan berbilang dimensi dalam PHP: menggunakan gelung foreach dan menggunakan fungsi array_walk. Kaedah ini sangat sesuai untuk melintasi dan memanipulasi tatasusunan berbilang dimensi yang kompleks. Kita boleh memilih kaedah yang berbeza mengikut keperluan dan struktur data yang berbeza. Pada masa yang sama, kita juga boleh menggunakan fungsi dan pengendali manipulasi tatasusunan lain untuk memproses tatasusunan berbilang dimensi, seperti penapis_tatasusunan, peta_tatasusunan dan pengurangan_tatasusunan. Menguasai kaedah ini membolehkan kami menulis aplikasi web dengan lebih cekap.
Atas ialah kandungan terperinci Bagaimana untuk menanyakan tatasusunan multidimensi menggunakan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!