繁体   English   中英

在foreach循环中获取总计字段值

[英]Get a total of field values in foreach loop

所以我的代码是

if ($activities) {
      foreach ($activities as $activity) {
        $price = $activity['price'];
        if($price) {echo $price;};
      }
    }

并且我想添加$ price字段的值以获得总回显

真正的工作在这一行继续进行,每次循环迭代时都会增加总数(到处): $total += $price;

$total = 0;
if ($activities) {
  foreach ($activities as $activity) {
    $price = $activity['price'];
    if($price) {
        echo $price; // do you still need this?
        $total += $price;
    }
  }
}
echo $total;

为什么要使用循环? 我会使用array_sum()

$total = array_sum(array_filter(array_values($activities)));

array_values返回所有值。 array_filter过滤掉任何计算结果为false的内容(如null或0)。 array_sum将它们加起来。

功能编程是你的朋友。 :-)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM