fetch_row的Array_sum

时间:2015-07-10 01:25:30

标签: php database

我试图在表的一列中得到一组浮点值的总和。我做了一个选择查询,拉出五组整数。带有 fetch_row while 函数用于获取数组。我使用 foreach 函数来获得总和,但是,echo或printf不会给我一个变量。相反,我得到一个不断增加的值,因为每个整数都被添加到它之前的值的总和。我已经尝试过array_sum,它也不起作用。请帮忙!我在Stackoverflow中查看了每个可能的问题。

<?php 
//Check if at least one row is found
if($results2->num_rows > 0) {
    //Loop through results and fetch as an array                
    $total = 0;
    while($rows = $results2->fetch_row()){                      

        foreach($rows as $sum)

            $total += $sum;     

            printf($total.'<br/>');             
        }           
    }
?>

1 个答案:

答案 0 :(得分:0)

您正在循环内打印总数,因此您可以看到所有小计。如果您只想查看最终结果,请在循环完成后打印。

foreach ($rows as $sum) {
    $total += $sum;
}
printf("%d<br/>", $total);

此外,当您使用printf时,第一个参数是格式字符串。之后的值会被替换为格式。

您还可以使用array_sum

printf("%d<br/>", array_sum($rows));

请注意,这些是对每行中所有列的总结,而不是整个表中的单个列。