如何使用特定键对数组值求和
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用特定键对数组值求和相关的知识,希望对你有一定的参考价值。
"accounts" => array:6 [
0 => array:2 [
"acc_id" => 1
"balance" => 1000.00
]
1 => array:2 [
"acc_id" => 2
"balance" => -1500.00
]
2 => array:4 [
"acc_id" => 3
"balance" => 5000.00
]
]
嗨,我怎么能总结所有的平衡?
码
foreach ($y['accounts'] as $k)
{
$sum_balance = $k['balance'];
}
$sum_balance += $sum_balance;
使用此代码,结果将仅对上一个余额本身求和。示例结果是10000.00
答案
你需要在foreach循环中增加sum:
$sum_balance = 0;
foreach ($y['accounts'] as $k)
{
$sum_balance += $k['balance'];
}
var_dump($sum_balance);
另一答案
将array_sum()
与array_column()
结合起来
array_column()
返回输入数组中单个列的值
array_sum()
计算数组中值的总和
$y = [
'accounts' => [
0 => [
"acc_id" => 1,
"balance" => 1000.00
],
1 => [
"acc_id" => 2,
"balance" => -1500.00
],
2 => [
"acc_id" => 3,
"balance" => 5000.00
]
]
];
var_dump(
array_sum(array_column($y['accounts'], 'balance'))
);
result:float 4500
另一答案
你的解决方案几乎是正确的,只需在循环之前初始化$sum_balance
并在循环内加总。
$sum_balance=0;
foreach ($y['accounts'] as $k)
{
$sum_balance += $k['balance'];
}
希望它有所帮助,如果您需要任何帮助,请随时联系。
以上是关于如何使用特定键对数组值求和的主要内容,如果未能解决你的问题,请参考以下文章