Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Tatasusunan dua dimensi PHP mengalih keluar nilai nol

Tatasusunan dua dimensi PHP mengalih keluar nilai nol

王林
王林asal
2023-05-07 17:23:101038semak imbas

Dalam pembangunan PHP, kami sering menggunakan tatasusunan dua dimensi. Tatasusunan dua dimensi ialah tatasusunan dengan pelbagai tatasusunan, setiap satunya boleh mengandungi bilangan elemen yang berbeza. Tetapi kadangkala kita perlu mengalih keluar nilai nol tertentu dalam tatasusunan dua dimensi. Dalam kes ini, kita boleh menggunakan beberapa kaedah mudah untuk mencapainya.

Kaedah 1: Gunakan gelung foreach untuk melintasi tatasusunan

Kita boleh menggunakan gelung foreach untuk melintasi tatasusunan dua dimensi, dan kemudian gunakan fungsi array_filter untuk mengalih keluar nilai null ​​​​dalam setiap tatasusunan. Berikut ialah contoh kod:

<?php

// 定义二维数组
$array = array(
  array('a', 'b', '', 'c'),
  array('', 'd', 'e'),
  array('f', '', 'g', 'h', 'i')
);

// 使用 foreach 循环遍历数组
foreach ($array as $key => $value) {
  // 使用 array_filter 函数去除每个数组中的空值
  $array[$key] = array_filter($value);
}

// 打印处理后的二维数组
print_r($array);

?>

Hasil keluaran:

Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
            [3] => c
        )

    [1] => Array
        (
            [1] => d
            [2] => e
        )

    [2] => Array
        (
            [0] => f
            [2] => g
            [3] => h
            [4] => i
        )

)

Dalam contoh ini, kami menggunakan gelung foreach untuk lelaran pada tatasusunan dua dimensi. Dalam setiap gelung, gunakan fungsi array_filter untuk mengalih keluar nilai nol dalam setiap subarray. Akhirnya, tatasusunan dua dimensi yang diproses dikembalikan.

Kaedah 2: Gunakan fungsi array_map untuk merentasi tatasusunan

Kita juga boleh menggunakan fungsi array_map untuk melintasi tatasusunan dua dimensi, dan kemudian gunakan fungsi array_filter untuk mengalih keluar nilai null dalam setiap tatasusunan. Berikut ialah contoh kod:

<?php

// 定义二维数组
$array = array(
  array('a', 'b', '', 'c'),
  array('', 'd', 'e'),
  array('f', '', 'g', 'h', 'i')
);

// 使用 array_map 函数遍历数组
$array = array_map(function($value) {
  // 使用 array_filter 函数去除每个数组中的空值
  return array_filter($value);
}, $array);

// 打印处理后的二维数组
print_r($array);

?>

Output:

Array
(
    [0] => Array
        (
            [0] => a
            [1] => b
            [3] => c
        )

    [1] => Array
        (
            [1] => d
            [2] => e
        )

    [2] => Array
        (
            [0] => f
            [2] => g
            [3] => h
            [4] => i
        )

)

Dalam contoh ini, kami menggunakan fungsi tatasusunan_map untuk mengulangi tatasusunan dua dimensi. Dalam setiap gelung, gunakan fungsi array_filter untuk mengalih keluar nilai nol dalam setiap subarray. Akhirnya, tatasusunan dua dimensi yang diproses dikembalikan.

Kedua-dua kaedah boleh melaksanakan operasi mengalih keluar nilai nol dalam tatasusunan dua dimensi. Kaedah mana yang hendak digunakan bergantung pada keperluan khusus dan tabiat menulis. Dalam pembangunan sebenar, kita boleh membuat pilihan berdasarkan logik dan kecekapan kod.

Atas ialah kandungan terperinci Tatasusunan dua dimensi PHP mengalih keluar nilai nol. 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