在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中文網其他相關文章!