Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk melaksanakan output susunan terbalik tatasusunan dalam PHP

Bagaimana untuk melaksanakan output susunan terbalik tatasusunan dalam PHP

PHPz
Lepaskan: 2023-04-19 10:49:57
asal
2187 orang telah melayarinya

Dalam PHP, terdapat banyak fungsi yang boleh digunakan untuk mengeluarkan susunan terbalik tatasusunan, seperti array_reverse(), rsort(), arsort(), dsb. Walau bagaimanapun, jika anda tidak menggunakan fungsi ini, bagaimana untuk mencapai output terbalik tatasusunan? Di bawah ini kami akan memperkenalkan beberapa kaedah pelaksanaan.

1. Gunakan untuk gelung

$arr = array(1, 2, 3, 4, 5);
$len = count($arr);
for ($i = $len - 1; $i >= 0; $i--) {
    echo $arr[$i] . " ";
}
Salin selepas log masuk

Melalui gelung for, mula merentasi dari elemen terakhir tatasusunan, kemudian kurangkan indeks $i secara beransur-ansur dan keluarkan setiap elemen. Kaedah ini mudah dan mudah, tetapi memerlukan pengiraan manual bagi panjang tatasusunan.

2. Gunakan gelung sementara

$arr = array(1, 2, 3, 4, 5);
while ($value = end($arr)) {
    echo $value . " ";
    prev($arr); // 向前移动指针
}
Salin selepas log masuk

untuk mendapatkan elemen terakhir tatasusunan melalui fungsi end(), kemudian keluarkannya satu demi satu dan gerakkan penunjuk ke elemen sebelumnya melalui fungsi prev(). Apabila penuding bergerak ke elemen pertama, fungsi end() akan mengembalikan palsu dan keluar dari gelung.

3. Gunakan gelung foreach

$arr = array(1, 2, 3, 4, 5);
$reverseArr = array();
foreach ($arr as $value) {
    array_unshift($reverseArr, $value);
}
foreach ($reverseArr as $value) {
    echo $value . " ";
}
Salin selepas log masuk

Lintas tatasusunan melalui setiap gelung dan tambahkan elemen tatasusunan pada permulaan tatasusunan baharu, iaitu, tambahkannya dari belakang ke hadapan. Akhir sekali, elemen dalam tatasusunan baharu dikeluarkan melalui gelung foreach, yang merupakan susunan terbalik tatasusunan asal.

4. Gunakan gelung do-while

$arr = array(1, 2, 3, 4, 5);
$len = count($arr);
$i = $len - 1;
do {
    echo $arr[$i] . " ";
    $i--;
} while ($i >= 0);
Salin selepas log masuk

Gunakan gelung do-while untuk melintasi dari elemen terakhir tatasusunan, kemudian kurangkan indeks $i secara beransur-ansur dan keluarkan setiap elemen. Sama seperti gelung for, tetapi tidak memerlukan pengiraan manual bagi panjang tatasusunan. Walau bagaimanapun, perlu diingatkan bahawa gelung do-while akan dilaksanakan sekurang-kurangnya sekali, iaitu, jika tatasusunan kosong, ralat akan berlaku.

5 Gunakan fungsi array_splice()

$arr = array(1, 2, 3, 4, 5);
$reverseArr = array();
while (count($arr) > 0) {
    $lastVal = array_splice($arr, -1);
    $reverseArr = array_merge($reverseArr, $lastVal);
}
foreach ($reverseArr  as $value) {
    echo $value . " ";
}
Salin selepas log masuk

Gunakan fungsi array_splice() untuk memadamkan elemen terakhir dari hujung tatasusunan, kembalikan elemen yang dipadamkan, dan kemudian gabungkannya. dengan tatasusunan baharu. Ulangi proses ini sehingga tatasusunan asal kosong, dan akhirnya mengeluarkan tatasusunan baharu, iaitu susunan terbalik tatasusunan asal.

Di atas adalah beberapa cara untuk melaksanakan output tatasusunan dalam susunan terbalik dalam PHP tanpa menggunakan fungsi Pembaca boleh memilih kaedah yang berbeza mengikut keperluan sebenar.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan output susunan terbalik tatasusunan 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