php中多个数组怎么求和

在PHP中,使用 array_sum() 函数可以简单地把多个数组求和。

array_sum() 函数使用方法比较简单,第一个参数可以接收一个单一的、包含数字的数组,或者是一系列数组。

它可以接受一个数组作为输入,并且使用布尔值 false 作为第二个参数(如果第二个参数不传递,按照以上的默认值来执行):

$arr1 = array(1,2,3,4);

$arr2 = array(5,6,7,8);

$total = array_sum(array($arr1,$arr2), false);

echo($total);

//输出:36

这个 array_sum() 函数的另外一种用法是把多个数字加起来,简单地使用多个参数:

$sum = array_sum(1,2,3,4);

echo($sum);

//输出:10

array_sum() 函数很方便,不受输入数组里面元素类型因素的影响,如果有非数字,那么它会忽视它们。

但有时候,我们也需要知道非数字元素对求和结果的影响,我们可以使用布尔值 true 作为 array_sum() 函数的第二个参数:

$array1 = array(1,2,3,4,’a’,false,null);

$sum = array_sum($array1, true);

echo($sum);

//输出:10

可以看到,使用了参数 true,当多个数组里的元素类型为非数字时,它会当做 0 对结果进行累加求和(false 为0,null 也为 0),所以这里结果为 10。

总结:PHP 中使用 array_sum() 函数可以简单地求和多个数组,不受元素类型的影响。如果需要知道非数字元素对求和结果的影响,可以使用布尔值 true 作为第二个参数。

PHP中有许多方法可以求多个数组的和,以下将介绍三种常用的方法:

第一种方法是使用数组函数array_sum()。该函数可以计算所给数组所有一维数组的值之和,并支持传递多个数组参数。函数array_sum()接受一个参数作为数组,并返回数组所有元素值之和,代码如下:

$arr1 = array(1, 2, 3);

$arr2 = array(4, 5, 6);

$arr3 = array(7, 8, 9);

$total = array_sum(array($arr1, $arr2, $arr3));

echo $total; //45

第二种方法是使用foreach()循环,首先判断两个数组的大小,让小的数组成为循环外的外层循环,大的数组成为循环内的内层循环,然后对每个元素求和,循环结束后,即可得到最终结果,代码如下实现:

$arr1 = array(1, 2, 3);

$arr2 = array(4, 5, 6);

$arr3 = array(7, 8, 9);

$total = 0;

if (count($arr1) > count($arr2))

$maxArr = $arr1;

else

$maxArr = $arr2;

foreach ($maxArr as $key => $val) {

$total += isset($arr1[$key]) ? $arr1[$key] : 0;

$total += isset($arr2[$key]) ? $arr2[$key] : 0;

$total += isset($arr3[$key]) ? $arr3[$key] : 0;

}

echo $total; //45

第三种方式是使用 php 内置函数array_reduce(),array_reduce() 函数可以把数组中的元素进行遍历,然后累加求和,接受四个参数,代码如下:

$arr1 = array(1, 2, 3);

$arr2 = array(4, 5, 6);

$arr3 = array(7, 8, 9);

$total = array_reduce(array($arr1, $arr2, $arr3),

function($v1, $v2){

return $v1 + array_sum($v2);

});

echo $total; //45

以上就是php中多个数组如何求和的介绍,分别介绍了数组函数array_sum()、foreach() 循环以及array_reduce() 函数三种方法

免责声明:
1.本站所有源码支持免费互换,所有资源来源于网络,分享目的仅供大家学习和交流!不得使用于非法商业用途,不得违反国家法律。否则后果自负!(下载即表示同意遵守此条例!) 所有资源,不能保证完全去除后门和源码的完整性!(建议先用D盾 等查杀软件先扫描一遍!)且都不包含技术服务请大家谅解!
2.根据二○○二年一月一日《计算机软件保护条例》规定:为了学习和研究软件内含的设计思想和原理, 通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可, 不向其支付报酬!鉴于此,也希望大家按此说明研究!
3.本站所有源码均收集来源于网络,若此源码资源等文章侵犯您的合法权益,请私信联系站长,并于24小时内删除下架。
4.本站所有源码仅限学习,交流使用,请勿上线或非法使用,一切法律责任均于此站无关。
5.侵权联系邮箱:188773464@qq.com
6.若您最终确认购买,则视为您100%认同并接受以上所述全部内容。

源码下载网 技术社区 php中多个数组怎么求和 https://svipm.com.cn/1555.html

相关文章

猜你喜欢