有两种常用的方法可以计算PHP多维数组中所有值的总和,具体分别如下:
有两种常用的方法可以计算PHP多维数组中所有值的总和,具体分别如下:
方法一:foreach语句遍历数组
// 示例一:使用foreach语句遍历数组
function getSum($arr) {
$sum = 0;
foreach ($arr as $value) {
if (is_array($value)) {
$sum += getSum($value);
} else {
$sum += $value;
}
}
return $sum;
}
// 测试代码
$arr1 = array(1, 2, 3, array(4, 5, 6, array(7, 8, 9)));
echo getSum($arr1); // 输出55
上述代码中,getSum()函数通过遍历数组中的每个值,判断其是否是数组类型,如果是,则递归调用自身,否则累加该元素到总和变量$sum中。这种方法的优点在于遍历过程直观,容易理解,适用于多维数组中有多种数据类型的情况。
方法二:array_walk_recursive()方法递归遍历数组
// 示例二:使用array_walk_recursive()方法递归遍历数组
function getSum2($arr) {
$sum = 0;
array_walk_recursive($arr, function($value) use (&$sum){
$sum += $value;
});
return $sum;
}
// 测试代码
$arr2 = array(1, 2, 3, array(4, 5, 6, array(7, 8, 9)));
echo getSum2($arr2); // 输出55
上述代码中,getSum2()函数使用了PHP自带的array_walk_recursive()方法,可以递归遍历多维数组中的每一个值,并对其执行一个回调函数。回调函数中使用传址方式引用了外部的总和变量$sum,并对每个遍历到的值进行累加,最终得到所有值的总和。这种方法代码简洁,但不如foreach方法直观。
综上,以上两种方式均可实现对PHP多维数组中所有值的总和计算,选择合适的方式应根据实际情况决定。
编程基础网
本文标题为:php计算多维数组中所有值总和的方法
基础教程推荐
猜你喜欢
- php array_map()函数实例用法 2023-05-19
- Lnmp修改php.ini配置以及使exec()函数可用 2023-09-01
- php常用字符串比较函数实例汇总 2023-12-19
- php文件下载后无法打开的处理方案及代码 2023-06-19
- 如何在PHP环境中使用ProtoBuf数据格式 2023-04-20
- PHP实现动态压缩js与css文件的方法 2022-10-15
- PHP使用Curl实现模拟登录及抓取数据功能示例 2022-10-15
- 浅谈Swoole并发编程的魅力 2023-06-12
- php使用redis的有序集合zset实现延迟队列应用示例 2023-04-01
- PHP读取并输出XML文件数据的简单实现方法 2022-10-03
