Php 获取Foreach循环中的值之和
我有一个foreach循环,它添加了一个表中的所有行,其中包含动态行(为上一页的订单中您想要的每个新产品添加行-有时可能是3个产品,有时可能是23个产品),并创建了一个pdf采购订单(使用mpdf)。我对显示每行(产品x数量=总)成本的行项目没有任何问题。我的问题是如何将这些总额转换为采购订单底部的单个总成本 创建的PDF上的示例:Php 获取Foreach循环中的值之和,php,Php,我有一个foreach循环,它添加了一个表中的所有行,其中包含动态行(为上一页的订单中您想要的每个新产品添加行-有时可能是3个产品,有时可能是23个产品),并创建了一个pdf采购订单(使用mpdf)。我对显示每行(产品x数量=总)成本的行项目没有任何问题。我的问题是如何将这些总额转换为采购订单底部的单个总成本 创建的PDF上的示例: Product 1 $2 x 3 = $6 Product 2 $4 x 2 = $8 Product 3 $6 x 1 = $6 所有这
Product 1 $2 x 3 = $6
Product 2 $4 x 2 = $8
Product 3 $6 x 1 = $6
所有这些都正常工作。下面是foreach循环的代码
<?php
foreach ($product as $a => $b) {
$prod_cost1[$a] = (("$qty[$a]") * ("$prod_cost[$a]"));
echo "
<tr>
<td>$product[$a] </td>
<td>$qty[$a] </td>
<td>$prod_cost1[$a] </td>
</tr>";
}
?>
我只需要合计所有$prod_成本1,并能在页面上的某个地方显示出来。谢谢你的帮助 - 只需在循环开始之前再创建一个变量,并在循环内部递增它
- 在处理数字时使用适当的类型转换是一个好习惯(尤其是在像PHP这样的弱类型语言中)。因此,我已将产品成本输入到
float
// Initialize the total sum varaible
$total_sum = 0;
foreach($product as $a => $b) {
$prod_cost1[$a] = (("$qty[$a]") * ("$prod_cost[$a]"));
// update the total sum (typecasting the product cost to float)
$total_sum += (float)$prod_cost1[$a];
echo"
<tr>
<td>$product[$a] </td>
<td>$qty[$a] </td>
<td>$prod_cost1[$a] </td>
</tr>";
}
// access it
echo $total_sum;
//初始化总和变量
$total_sum=0;
foreach($a=>$b的产品){
$prod_cost1[$a]=((“$qty[$a]”)*(“$prod_cost1[$a]”);
//更新总金额(将产品成本键入浮动)
$total_sum+=(浮动)$prod_cost1[$a];
回声“
$product[$a]
$qty[$a]
$prod_成本1[$a]
";
}
//访问它
echo$total_sum;
$total=0;
foreach($a=>$b的产品){
$prod_cost1[$a]=((“$qty[$a]”)*(“$prod_cost1[$a]”);
$total+=$prod_cost1[$a];
回声“
$product[$a]
$qty[$a]
$prod_成本1[$a]
";
}
echo“总计:{$Total}”;
array\u sum($prod\u cost1)
不是我。但也许缺乏解释!还有,你的是我的复制品:-)@MadhurBhaiya我可以说同样的话:)当你跑第一个到达那里时,这种情况经常发生。@Barry,有一分钟的间隔。无论如何,我同意你可能没有抄袭我的答案。@Barry我正在投票,因为你的答案仍然有效。谢谢@MadhurBhaiya我之前也有同样的答案。。。另一个答案和我的12票同时出现并被接受。。。我什么都没有(至少没有否决票)。。。所有这些都是因为我花了额外的时间链接到文档、格式化等等。。。这就是为什么我没有在这里解释我guess@Psam乐意帮忙:)
$total = 0;
foreach($product as $a => $b) {
$prod_cost1[$a] = (("$qty[$a]") * ("$prod_cost[$a]"));
$total += $prod_cost1[$a];
echo"<tr>
<td>$product[$a] </td>
<td>$qty[$a] </td>
<td>$prod_cost1[$a] </td>
</tr>";
}
echo "Total: {$total}";