首頁 > 後端開發 > PHP問題 > php 兩個二維數組求和

php 兩個二維數組求和

PHPz
發布: 2023-05-19 18:32:37
原創
1129 人瀏覽過

在PHP開發中,經常需要對陣列進行操作,其中求和操作也是常見的。當我們遇到兩個二維數組需要求和時,可以透過以下幾種方法來實現。

方法一:利用迴圈遍歷每個元素,逐一進行相加求和。

範例程式碼如下:

<?php
$array1 = array(
  array(1, 2, 3),
  array(4, 5, 6),
);

$array2 = array(
  array(7, 8, 9),
  array(10, 11, 12),
);

$rows = count($array1);
$cols = count($array1[0]);

$result = array();

for ($i = 0; $i < $rows; ++$i) {
  for ($j = 0; $j < $cols; ++$j) {
    $result[$i][$j] = $array1[$i][$j] + $array2[$i][$j];
  }
}

print_r($result);
?>
登入後複製

輸出結果:

Array
(
    [0] => Array
        (
            [0] => 8
            [1] => 10
            [2] => 12
        )

    [1] => Array
        (
            [0] => 14
            [1] => 16
            [2] => 18
        )

)
登入後複製
登入後複製

方法二:利用array_map()函數來對每個元素相加求和,可以減少程式碼量。

範例程式碼如下:

<?php
$array1 = array(
  array(1, 2, 3),
  array(4, 5, 6),
);

$array2 = array(
  array(7, 8, 9),
  array(10, 11, 12),
);

$result = array_map(function ($a, $b) {
  return array_map(function ($x, $y) {
    return $x + $y;
  }, $a, $b);
}, $array1, $array2);

print_r($result);
?>
登入後複製

輸出結果:

Array
(
    [0] => Array
        (
            [0] => 8
            [1] => 10
            [2] => 12
        )

    [1] => Array
        (
            [0] => 14
            [1] => 16
            [2] => 18
        )

)
登入後複製
登入後複製

方法三:利用array_reduce()函數來進行二維數組元素求和。

範例程式碼如下:

<?php
$array1 = array(
  array(1, 2, 3),
  array(4, 5, 6),
);

$array2 = array(
  array(7, 8, 9),
  array(10, 11, 12),
);

$result = array_map(function ($a) {
  return array_reduce($a, function ($x, $y) {
    return $x + $y;
  });
}, array_map(null, $array1, $array2));

print_r($result);
?>
登入後複製

輸出結果:

Array
(
    [0] => 8
    [1] => 10
    [2] => 12
    [3] => 14
    [4] => 16
    [5] => 18
)
登入後複製

以上三種方法可以根據實際需求進行選擇,可以根據需要增加公式、函數、循環等細節來滿足不同的計算需求。

以上是php 兩個二維數組求和的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板