php - 获取结果集列中的数字总和
问题描述
我在下面有这段代码,它显示了一个数据库结果集。
<?php foreach ($_SESSION['merged_data'] as $data){ ?>
<tr>
<td><label><?php echo $data['sales_day']; ?></label></td>
<td><label><?php echo $data['sales_total']; ?></label></td>
<td><label><?php echo $data['sales_comm']; ?></label></td>
上面的代码工作正常。然后我尝试使用以下代码计算列 sales_comm 的所有值的总和
<div class = "col-sm-3"> <?php $comm_total += $data['sales_comm'];
echo $comm_total; ?>
问题是它不是返回 $sales_comm 的值的总和,而是返回最后一个值。
解决方案
您必须在循环中进行添加,然后在循环完成后进行输出。如果要使用+=
,还必须在循环之前将计数器初始化为零。
<?php
$comm_total = 0;
foreach ($_SESSION['merged_data'] as $data){
$comm_total += $data['sales_comm'];
?>
<tr>
<td><label><?php echo $data['sales_day']; ?></label></td>
<td><label><?php echo $data['sales_total']; ?></label></td>
<td><label><?php echo $data['sales_comm']; ?></label></td>
</tr>
<?php
} // endforeach
?>
</table>
<div class="col-sm-3"> <?php echo $comm_total; ?> </div>
推荐阅读
- python - Numpy - 一维输入数组的多个 numpy.roll
- angular - 如何同时订阅两个 observable,第二个 observable 参数取决于第一个 observable 的结果?
- c# - 强制在 EF Core 下显式设置 ID 时无法添加实体
- angular - Angular Typescript Object.prototype.get()
- python - 当控制台输出重新路由到 GUI 时暂停 Python 代码
- anaconda - 无法使用 python=3.4 创建 Anaconda 环境
- jquery - 为什么DataTable只显示数组的第一行
- scala - Playframework / Scala - 重定向不起作用
- data-visualization - 如何使用 CAPL 将测试期间的信号读数/XCP 读数图表插入到我的报告中?
- python - 将 django 应用程序部署到 heroku:应用程序错误