php - 这三个数组如何合并成一个数组,给个思路或者代码谢谢
本文介绍了php - 这三个数组如何合并成一个数组,给个思路或者代码谢谢的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
如何将多个数组里的值进行相加?
解决方案
可以用 array_reduce(數組, 處理函數, 初始值)
array_reduce — 用回调函数迭代地将数组简化为单一的值
<?php
$arr = [
[
[ 'count' => 1 ]
],
[
[ 'count' => 2 ],
[ 'count' => 67 ],
]
,
[
[ 'count' => 3 ],
[ 'count' => 2 ],
],
];
$sum = array_reduce($arr, function($currentSumOuter, $itemOuter) {
// 這裡是各組中的 count 總和
// 返回結構是 [ 'count' => 總和 ]
$sumInner = array_reduce($itemOuter, function($currentSumInner, $itemInner) {
return [
'count' => $itemInner['count'] + $currentSumInner['count']
];
}, 0);
// 這裡再按照原先結構,把各組總和再次總和
return [
[
'count' => $currentSumOuter[0]['count'] + $sumInner['count']
]
];
}, 0);
echo '<pre>';
print_r($sum);
echo '</pre>';
这篇关于php - 这三个数组如何合并成一个数组,给个思路或者代码谢谢的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文