Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk memintas tatasusunan dua dimensi dalam php

Bagaimana untuk memintas tatasusunan dua dimensi dalam php

王林
王林asal
2023-05-19 13:14:091001semak imbas

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 )

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);

Hasil output ialah:

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

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

)

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);

Hasil keluaran adalah sama seperti contoh sebelumnya:

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

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

)

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() ]] )

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);

Hasil output ialah:

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

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

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

)

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);

Hasil output ialah:

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

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

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

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

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

)

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!

Kenyataan:
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