Rumah > Artikel > pembangunan bahagian belakang > Cara menggunakan gelung untuk mengeluarkan tatasusunan tiga dimensi dalam PHP
Apabila membangun dan menulis atur cara PHP, kita selalunya perlu mengulangi elemen dalam tatasusunan, memprosesnya dan menjadikannya halaman hadapan. Dalam proses ini, kadangkala kita mungkin menghadapi tatasusunan tiga dimensi, iaitu tatasusunan bersarang juga mengandungi tatasusunan. Bagaimana untuk menggunakan gelung untuk mengeluarkan tatasusunan tiga dimensi sedemikian? Kami akan membincangkan perkara ini secara terperinci di bawah.
Sebelum kita mula menerangkan output gelung tatasusunan tiga dimensi, kita perlu terlebih dahulu memahami struktur tatasusunan tiga dimensi. Tatasusunan tiga dimensi terdiri daripada tatasusunan berbilang dua dimensi, dan setiap tatasusunan dua dimensi mengandungi berbilang tatasusunan unsur tunggal. Contohnya adalah seperti berikut:
$three_dimensional_array = array( array( array(1, 2, 3), array(4, 5, 6), array(7, 8, 9) ), array( array(10, 11, 12), array(13, 14, 15), array(16, 17, 18) ), array( array(19, 20, 21), array(22, 23, 24), array(25, 26, 27) ) );
Seperti yang anda lihat, dalam tatasusunan tiga dimensi ini, kami mempunyai sejumlah tiga tatasusunan dua dimensi dan setiap tatasusunan dua dimensi mempunyai tiga tatasusunan unsur tunggal .
Untuk menggelung melalui semua elemen dalam tatasusunan tiga dimensi, kita boleh menggunakan pernyataan gelung foreach terbina dalam PHP. Contohnya adalah seperti berikut:
foreach ($three_dimensional_array as $two_dimensional_array) { foreach ($two_dimensional_array as $single_element_array) { foreach ($single_element_array as $value) { echo $value . ' '; } } }
Dalam contoh ini, kami menggunakan tiga pernyataan gelung foreach bersarang untuk melintasi tatasusunan dua dimensi dan tatasusunan elemen tunggal dalam tatasusunan tiga dimensi masing-masing, dan akhirnya mengeluarkan tatasusunan tiga dimensi bagi semua elemen.
Kaedah traversal gelung lain yang biasa digunakan ialah menggunakan pernyataan gelung for. Walau bagaimanapun, memandangkan terdapat berbilang peringkat tatasusunan bersarang dalam tatasusunan tiga dimensi, menggunakan gelung for mungkin sedikit menyusahkan. Contohnya adalah seperti berikut:
for ($i = 0; $i < count($three_dimensional_array); $i++) { $two_dimensional_array = $three_dimensional_array[$i]; for ($j = 0; $j < count($two_dimensional_array); $j++) { $single_element_array = $two_dimensional_array[$j]; for ($k = 0; $k < count($single_element_array); $k++) { echo $single_element_array[$k] . ' '; } } }
Dalam contoh ini, kami menggunakan gelung bersarang 3 lapisan untuk merentasi semua elemen dalam tatasusunan tiga dimensi dan mengeluarkannya ke halaman hujung hadapan.
Selain menggunakan pernyataan foreach dan untuk gelung, PHP juga menyediakan fungsi yang merentasi semua elemen tatasusunan berbilang dimensi, iaitu array_walk_recursive(). Contohnya adalah seperti berikut:
function output_single_element($value, $key) { echo $value . ' '; } array_walk_recursive($three_dimensional_array, 'output_single_element');
Dalam contoh ini, kami mentakrifkan fungsi panggil balik bernama output_single_element, yang digunakan untuk mengeluarkan nilai elemen tunggal dalam tatasusunan. Kemudian, kami menggunakan fungsi array_walk_recursive() untuk melintasi keseluruhan tatasusunan tiga dimensi, dan memanggil fungsi panggil balik output_single_element() setiap kali ia melintasi elemen tatasusunan tunggal untuk mengeluarkannya ke halaman hadapan.
Artikel ini memperkenalkan tiga penyataan dan fungsi gelung yang biasa digunakan untuk mengeluarkan semua elemen dalam tatasusunan tiga dimensi bersarang. Tidak kira kaedah mana yang digunakan, perkara utama adalah untuk menjelaskan struktur tatasusunan tiga dimensi dan sempadan tatasusunan setiap lapisan, dan kemudian gunakan kaedah traversal untuk mengeluarkan elemen dalam tatasusunan.
Atas ialah kandungan terperinci Cara menggunakan gelung untuk mengeluarkan tatasusunan tiga dimensi dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!