Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk membalikkan tatasusunan php

Bagaimana untuk membalikkan tatasusunan php

藏色散人
Lepaskan: 2023-03-14 11:56:01
asal
4110 orang telah melayarinya

Cara melaksanakan pembalikan tatasusunan dalam PHP: 1. Gunakan kaedah "function reverse($arr){...}" untuk mencapai pembalikan tatasusunan; 2. Gunakan "function reverse_arr($arr){.. . }" kaedah boleh digunakan untuk membalikkan tatasusunan.

Bagaimana untuk membalikkan tatasusunan php

Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.4, komputer Dell G3.

PHP melaksanakan pembalikan tatasusunan

Terdapat fungsi dalam php yang boleh membalikkan tatasusunan, yang sering digunakan dalam kerja dan sangat mudah. Mari kita laksanakan fungsi ini sendiri hari ini.

$arr = [2,5,6,1,8,16,12];
function reverse($arr){
    $left = 0;
    $right = count($arr) -1;
    $temp = [];
    while ($left <= $right){
        $temp[$left] = $arr[$right];
        $temp[$right]  = $arr[$left];
        $left++;
        $right--;
    }
    ksort($temp);
    return $temp;
}

效果

Array
(
    [0] => 12
    [1] => 16
    [2] => 8
    [4] => 6
    [5] => 5
    [6] => 2
)
Salin selepas log masuk

Walau bagaimanapun, fungsi ini hanya boleh mengendalikan tatasusunan satu dimensi. Semasa melaksanakan satu yang boleh mengendalikan pelbagai dimensi.

$arr = [2,[6,3,9],1,[5,2,1,[10,8,7]],5,0];

function reverse_arr($arr){
    $index = 0;
    $reverse_array = [];
    foreach ($arr as $sub_arr){
        if(is_array($sub_arr)){
            $sub_arr = reverse($sub_arr);
            $arr_ = reverse_arr($sub_arr);
            $reverse_array[$index] = $arr_;
        }else{
            $reverse_array[$index] = $sub_arr;
        }
        $index++;
    }
    return $reverse_array;
}

print_r(reverse(reverse_arr($arr)));

输出结果
Salin selepas log masuk
Array
(
    [0] => 0
    [1] => 5
    [2] => Array
        (
            [0] => Array
                (
                    [0] => 7
                    [1] => 8
                    [2] => 10
                )

            [1] => 1
            [2] => 2
            [3] => 5
        )

    [3] => 1
    [4] => Array
        (
            [0] => 9
            [1] => 3
            [2] => 6
        )

    [5] => 2
)
Salin selepas log masuk

Yang di atas adalah semua tatasusunan indeks berangka dan tidak boleh mengendalikan tatasusunan bersekutu Seterusnya ialah

$arr = [&#39;a&#39;=>&#39;aa&#39;,&#39;b&#39;=>&#39;bb&#39;,&#39;c&#39;=>&#39;cc&#39;,&#39;d&#39;=>&#39;dd&#39;,&#39;e&#39;=>&#39;ee&#39;];
function reverse($arr){
    $temp = [];
    end($arr);
    while (($value = current($arr)) != null){
        $temp[key($arr)] = $value;
        prev($arr);
    }
    return $temp;
}
print_r(reverse($arr));

结果
Array
(
    [e] => ee
    [d] => dd
    [c] => cc
    [b] => bb
    [a] => aa
)
Salin selepas log masuk

yang boleh mengendalikan tatasusunan bersekutu pembelajaran: "Tutorial Video PHP"

Atas ialah kandungan terperinci Bagaimana untuk membalikkan tatasusunan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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