Bagaimana untuk memintas tatasusunan dua dimensi dalam php

王林
Lepaskan: 2023-05-19 13:14:09
asal
1000 orang telah melayarinya

PHP ialah bahasa skrip yang sangat biasa digunakan Dalam pembangunan harian, kita mungkin perlu memintas tatasusunan dua dimensi. Ia adalah sangat mudah untuk menggunakan PHP untuk mengendalikan tatasusunan dua dimensi Berikut ialah beberapa cara untuk memintas tatasusunan dua dimensi.

1. Gunakan fungsi array_slice()

Fungsi array_slice() ialah fungsi yang disertakan dengan PHP dan boleh digunakan untuk memintas sebahagian daripada tatasusunan. Menggunakan fungsi ini, anda boleh memintas tatasusunan dua dimensi dengan mudah Apabila menggunakannya, anda hanya perlu menentukan kedudukan permulaan dan panjang pemintas.

digunakan seperti berikut:

array array_slice ( array $array , int $offset , int $length = null , bool $preserve_keys = false )
Salin selepas log masuk

Antaranya, $array ialah tatasusunan yang akan dipintas, $offset ialah kedudukan permulaan pemintasan, $length ialah panjang pemintasan dan $preserve_keys menunjukkan sama ada untuk mengekalkan nama kunci asal, lalai adalah palsu.

Perlu diambil perhatian bahawa fungsi ini akan mengembalikan tatasusunan baharu dan tidak akan menjejaskan nilai tatasusunan asal. Berikut ialah contoh:

$arr = array(
    array('name'=>'张三','age'=>20),
    array('name'=>'李四','age'=>22),
    array('name'=>'王五','age'=>24),
    array('name'=>'赵六','age'=>26),
    array('name'=>'孙七','age'=>28)
);

$new_arr = array_slice($arr, 1,2);

print_r($new_arr);
Salin selepas log masuk

Hasil output ialah:

Array
(
    [0] => Array
        (
            [name] => 李四
            [age] => 22
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 24
        )

)
Salin selepas log masuk
Salin selepas log masuk

Kod di atas memintas dua elemen bermula daripada elemen kedua dalam tatasusunan asal dan mengembalikan tatasusunan baharu.

2. Gunakan untuk gelung

Menggunakan "untuk gelung" juga boleh memintas sebahagian daripada tatasusunan dua dimensi, dengan mengawal kedudukan permulaan dan kedudukan akhir gelung untuk mencapai pemintasan. Berikut ialah contoh:

$arr = array(
    array('name'=>'张三','age'=>20),
    array('name'=>'李四','age'=>22),
    array('name'=>'王五','age'=>24),
    array('name'=>'赵六','age'=>26),
    array('name'=>'孙七','age'=>28)
);

$new_arr = array();
for($i=1;$i<=2;$i++){
    array_push($new_arr,$arr[$i]);
}

print_r($new_arr);
Salin selepas log masuk

Hasil keluaran adalah sama seperti contoh sebelumnya:

Array
(
    [0] => Array
        (
            [name] => 李四
            [age] => 22
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 24
        )

)
Salin selepas log masuk
Salin selepas log masuk

Kod di atas menggunakan "untuk gelung" untuk memintas dua elemen bermula dari elemen kedua dan kembalikan tatasusunan baharu.

3. Gunakan fungsi array_splice()

Fungsi array_splice() juga merupakan fungsi yang disertakan dengan PHP dan boleh digunakan untuk memintas sebahagian daripada tatasusunan. Menggunakan fungsi ini, anda boleh memintas tatasusunan dua dimensi dengan mudah Apabila menggunakannya, anda hanya perlu menentukan kedudukan permulaan dan panjang pemintas.

digunakan seperti berikut:

array array_splice ( array &$input , int $offset [, int $length = 0 [, mixed $replacement = array() ]] )
Salin selepas log masuk

Antaranya, $input ialah tatasusunan yang akan dipintas, $offset ialah kedudukan permulaan pemintasan, $length ialah panjang pemintasan, dan $penggantian mewakili kandungan gantian Boleh menjadi tatasusunan atau jenis nilai lain.

Perlu diingatkan bahawa fungsi ini akan mengubah suai nilai tatasusunan asal, iaitu selepas pemintasan, tatasusunan asal akan ditukar. Berikut ialah contoh:

$arr = array(
    array('name'=>'张三','age'=>20),
    array('name'=>'李四','age'=>22),
    array('name'=>'王五','age'=>24),
    array('name'=>'赵六','age'=>26),
    array('name'=>'孙七','age'=>28)
);

array_splice($arr, 1,2);

print_r($arr);
Salin selepas log masuk

Hasil output ialah:

Array
(
    [0] => Array
        (
            [name] => 张三
            [age] => 20
        )

    [1] => Array
        (
            [name] => 赵六
            [age] => 26
        )

    [2] => Array
        (
            [name] => 孙七
            [age] => 28
        )

)
Salin selepas log masuk

Kod di atas memintas dua elemen bermula dari elemen kedua dalam tatasusunan asal dan mengubah suai tatasusunan asal.

4. Gunakan array_slice() dan gelung foreach

Kadangkala kita perlu memintas lajur tertentu dalam tatasusunan dua dimensi, yang boleh dicapai dengan menggunakan fungsi array_slice() dan gelung foreach . Berikut ialah contoh:

$arr = array(
    array('name'=>'张三','age'=>20),
    array('name'=>'李四','age'=>22),
    array('name'=>'王五','age'=>24),
    array('name'=>'赵六','age'=>26),
    array('name'=>'孙七','age'=>28)
);

$new_arr = array();
foreach($arr as $val){
    $new_arr[] = array_slice($val,0,1);
}

print_r($new_arr);
Salin selepas log masuk

Hasil output ialah:

Array
(
    [0] => Array
        (
            [name] => 张三
        )

    [1] => Array
        (
            [name] => 李四
        )

    [2] => Array
        (
            [name] => 王五
        )

    [3] => Array
        (
            [name] => 赵六
        )

    [4] => Array
        (
            [name] => 孙七
        )

)
Salin selepas log masuk

Kod di atas memintas lajur pertama dalam tatasusunan dua dimensi dan mengembalikan tatasusunan baharu.

Di atas adalah beberapa kaedah memintas tatasusunan dua dimensi, saya harap ia dapat membantu anda menyelesaikan masalah dalam pembangunan harian.

Atas ialah kandungan terperinci Bagaimana untuk memintas tatasusunan dua 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