Rumah > pembangunan bahagian belakang > masalah PHP > Mari kita bincangkan tentang beberapa kaedah merentasi tatasusunan berbilang dimensi dalam PHP

Mari kita bincangkan tentang beberapa kaedah merentasi tatasusunan berbilang dimensi dalam PHP

PHPz
Lepaskan: 2023-04-26 15:40:25
asal
836 orang telah melayarinya

PHP ialah bahasa yang digunakan secara meluas dalam bidang pembangunan web, dan dalam pembangunan PHP, penggunaan tatasusunan berbilang dimensi adalah sangat biasa. Tatasusunan multidimensi merujuk kepada tatasusunan dengan pelbagai peringkat sarang Bagaimana untuk melintasi tatasusunan sedemikian? Hari ini saya akan memperkenalkan beberapa kaedah traversal tatasusunan berbilang dimensi dalam PHP.

1. Gunakan gelung for untuk melintasi tatasusunan berbilang dimensi

Kaedah yang paling mudah dan langsung ialah menggunakan gelung for untuk melintasi tatasusunan berbilang dimensi. Melintasi tatasusunan bersarang berbilang peringkat dicapai melalui sarang untuk gelung. Berikut ialah kod sampel:

$array = array( 
    array('name' => 'Jack', 'age' => 20, 'city' => 'Beijing'), 
    array('name' => 'Mary', 'age' => 22, 'city' => 'Shanghai'), 
    array('name' => 'Tom', 'age' => 25, 'city' => 'Guangzhou'), 
); 

for($i=0; $i<count($array); $i++){ 
    $sub_array = $array[$i]; 
    echo "姓名:".$sub_array[&#39;name&#39;]."<br>"; 
    echo "年龄:".$sub_array['age']."<br>"; 
    echo "城市:".$sub_array['city']."<br>"; 
}
Salin selepas log masuk

2. Gunakan foreach untuk melintasi tatasusunan berbilang dimensi

Selain gelung for, terdapat satu lagi kaedah yang mudah dan pantas dalam PHP, yang ialah menggunakan foreach untuk melintasi tatasusunan berbilang dimensi. Gelung foreach secara automatik boleh mengenali situasi tatasusunan berbilang dimensi dan boleh melintasi tatasusunan berbilang dimensi dengan mudah. Berikut ialah kod sampel:

$array = array( 
    array('name' => 'Jack', 'age' => 20, 'city' => 'Beijing'), 
    array('name' => 'Mary', 'age' => 22, 'city' => 'Shanghai'), 
    array('name' => 'Tom', 'age' => 25, 'city' => 'Guangzhou'), 
); 

foreach($array as $sub_array){ 
    echo "姓名:".$sub_array['name']."<br>"; 
    echo "年龄:".$sub_array['age']."<br>"; 
    echo "城市:".$sub_array['city']."<br>"; 
}
Salin selepas log masuk

3 Gunakan rekursi untuk melintasi tatasusunan berbilang dimensi

Melintasi rekursif tatasusunan berbilang dimensi ialah kaedah yang agak maju. Ia berfungsi untuk mana-mana tatasusunan bersarang berbilang peringkat, dan kodnya ringkas dan mudah difahami. Fungsi rekursif memanggil dirinya sendiri, melintasi tatasusunan sambil terus melintasi sub-tatasusunan secara rekursif sehingga penghujung tahap terakhir. Berikut ialah kod sampel:

$array = array( 
    array('name' => 'Jack', 'age' => 20, 'city' => 'Beijing'), 
    array('name' => 'Mary', 'age' => 22, 'city' => 'Shanghai'), 
    array('name' => 'Tom', 'age' => 25, 'city' => 'Guangzhou'), 
    array( 
        'name' => 'Jerry', 
        'age' => 23, 
        'city' => 'Hangzhou', 
        'children' => array( 
            array('name' => 'Mike', 'age' => 3), 
            array('name' => 'Lucy', 'age' => 1) 
        ) 
    ) 
); 

function traverseArray($array) { 
    foreach($array as $key => $value) { 
        if(is_array($value)) { 
            traverseArray($value); 
        } else { 
            echo $key . ': ' . $value . '<br>'; 
        } 
    } 
} 

traverseArray($array);
Salin selepas log masuk

Di atas ialah tiga kaedah traversal tatasusunan berbilang dimensi dalam PHP. Menggunakan kaedah ini, anda boleh memproses data tatasusunan bersarang berbilang lapisan dengan mudah dan meningkatkan kecekapan pembangunan program PHP.

Atas ialah kandungan terperinci Mari kita bincangkan tentang beberapa kaedah merentasi tatasusunan berbilang dimensi dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan