卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章11179本站已运行3223

php 两个二维数组求和

在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求数组长度的函数
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏