Rumah > Artikel > pembangunan bahagian belakang > Apakah kaedah perwakilan tatasusunan tiga dimensi dalam php
Tatasusunan dalam PHP terbahagi kepada tiga bentuk: tatasusunan satu dimensi, tatasusunan berbilang dimensi dan tatasusunan berbilang dimensi bermakna tatasusunan mengandungi tatasusunan, iaitu unsur tatasusunan masih tatasusunan. Dalam pembangunan sebenar, kita sering perlu menggunakan tatasusunan berbilang dimensi untuk mewakili beberapa struktur data yang kompleks, seperti jadual dua dimensi, data JSON, dsb. Seterusnya, kami akan memperkenalkan kaedah perwakilan tatasusunan tiga dimensi dalam PHP secara terperinci.
1. Tentukan tatasusunan tiga dimensi
Kaedah mentakrif tatasusunan tiga dimensi adalah serupa dengan mentakrifkan tatasusunan satu dimensi dan tatasusunan dua dimensi Ia juga ditakrifkan menggunakan array() atau "[]". Sebagai contoh, berikut ialah tatasusunan tiga dimensi yang ditakrifkan menggunakan tatasusunan():
$arr = array( array( array("apple", "orange"), array("banana", "peach") ), array( array("car", "bike"), array("bus", "train") ) );
Kod di atas mentakrifkan tatasusunan tiga dimensi, di mana dimensi pertama mempunyai dua elemen dan setiap elemen ialah tatasusunan dua dimensi. Terdapat dua elemen dalam setiap tatasusunan dua dimensi, dan setiap elemen ialah tatasusunan satu dimensi. Akhir sekali, terdapat dua elemen dalam setiap tatasusunan satu dimensi, mewakili buah-buahan yang berbeza, pengangkutan dan maklumat lain.
2. Kaedah akses tatasusunan tiga dimensi
Mengakses elemen dalam tatasusunan tiga dimensi memerlukan penetapan tiga nilai indeks, yang mewakili kedudukan elemen dimensi pertama, kedua dan ketiga secara bergilir . Sebagai contoh, kod berikut mengeluarkan beberapa elemen tatasusunan tiga dimensi di atas:
echo $arr[0][0][0]; //输出apple echo $arr[1][1][0]; //输出bus echo $arr[0][1][1]; //输出peach
3 Kaedah traversal tatasusunan tiga dimensi
Kaedah merentasi tatasusunan tiga dimensi ialah. sama seperti merentasi tatasusunan satu dimensi dan tatasusunan dua dimensi Tatasusunan adalah berbeza. Di bawah, kami memperkenalkan dua kaedah traversal tatasusunan tiga dimensi yang biasa digunakan.
1. Gunakan gelung bersarang untuk melintasi tatasusunan tiga dimensi
Menggunakan gelung bersarang untuk melintasi tatasusunan tiga dimensi ialah kaedah yang boleh dilaksanakan. Contohnya, kod berikut menggunakan gelung dua peringkat untuk melintasi tatasusunan tiga dimensi $arr dan mengeluarkan nilai setiap elemen tatasusunan:
for ($i=0; $i<count($arr); $i++) { for ($j=0; $j<count($arr[$i]); $j++) { for ($k=0; $k<count($arr[$i][$j]); $k++) { echo $arr[$i][$j][$k]."<br/>"; } } }
Dalam kod di atas, gelung tahap pertama melintasi dimensi pertama dan tahap kedua Gelung melintasi dimensi kedua, dan gelung tahap ketiga melintasi dimensi ketiga, menghasilkan nilai setiap elemen tatasusunan secara bergilir-gilir.
2. Gunakan fungsi rekursif untuk melintasi tatasusunan tiga dimensi
Fungsi rekursif merujuk kepada teknik memanggil fungsi itu sendiri, yang sesuai untuk melintasi tatasusunan berbilang dimensi. Berikut ialah contoh kod untuk fungsi rekursif untuk melintasi tatasusunan tiga dimensi:
function traverse($arr) { foreach ($arr as $key=>$value) { if (is_array($value)) { traverse($value); } else { echo $value."<br/>"; } } } traverse($arr);
Dalam kod di atas, fungsi rekursif bernama traverse() ditakrifkan Nama fungsi boleh dipilih sendiri Parameter fungsi ialah tatasusunan dua dimensi. Fungsi ini menggunakan gelung foreach untuk merentasi setiap elemen dalam tatasusunan Jika elemen semasa ialah tatasusunan, ia memanggil dirinya secara rekursif dan terus melintasi peringkat tatasusunan seterusnya. Jika elemen semasa bukan tatasusunan, nilai elemen adalah output secara langsung.
Di atas ialah dua cara untuk mewakili tatasusunan tiga dimensi dan merentasi tatasusunan tiga dimensi dalam PHP Menguasai kaedah ini boleh membantu kami mengendalikan tatasusunan berbilang dimensi dan meningkatkan kecekapan pembangunan kod.
Atas ialah kandungan terperinci Apakah kaedah perwakilan tatasusunan tiga dimensi dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!