foreach循环php中的sum值

bob*_*bob 22 php foreach count

foreach($group as $key=>$value)
{
    echo $key. " = " .$value. "<br>";
}
Run Code Online (Sandbox Code Playgroud)

例如:

doc1 = 8

doc2 = 7

doc3 = 1

我想要计算$ value,所以结果是8 + 7 + 1 = 16.我该怎么办?

谢谢.

cha*_*ool 75

$sum = 0;
foreach($group as $key=>$value)
{
   $sum+= $value;
}
echo $sum;
Run Code Online (Sandbox Code Playgroud)


Kis*_*tel 14

在你的情况下,你想要使用foreach循环

$sum = 0;
foreach($group as $key => $value) {
   $sum += $value; 
}
echo $sum;
Run Code Online (Sandbox Code Playgroud)

但是如果你想使用数组的直接总和而不是下面的解决方案:

$total = array_sum($group);
Run Code Online (Sandbox Code Playgroud)

因为只有数组循环的总和是时间浪费.

http://php.net/manual/en/function.array-sum.php

array_sum - 计算数组中值的总和

<?php
$a = array(2, 4, 6, 8);
echo "sum(a) = " . array_sum($a) . "\n";

$b = array("a" => 1.2, "b" => 2.3, "c" => 3.4);
echo "sum(b) = " . array_sum($b) . "\n";
?>
Run Code Online (Sandbox Code Playgroud)

上面的例子将输出:

sum(a) = 20
sum(b) = 6.9
Run Code Online (Sandbox Code Playgroud)


Mr.*_*ien 5

使用+=

$val = 0;

foreach($arr as $var) {
   $val += $var; 
}

echo $val;
Run Code Online (Sandbox Code Playgroud)


Aus*_*rst 5

您可以使用array_sum().

$total = array_sum($group);
Run Code Online (Sandbox Code Playgroud)