在下面,我使用循环显示折扣$finaltot
总计显示多个值的值,我必须在变量中存储多个值,并添加数学。
假设其显示值10 23 40
,所以我必须像10 + 23 + 40
所以它会显示$finaltot=73
所以如何在循环中执行此操作。
<?php
$product_orignalprice = $this->getProduct()->getPrice();
$discountedprice=$_item->getPrice();
$todatlsaving=$product_orignalprice-$discountedprice;
echo $finaltot=$todatlsaving * $this->getQty();
?>
答案 0 :(得分:2)
最快/最简单的方法是不断向变量添加数据:
+=
符号用于表示等于它的值加上新值 - 因此写$var+=$newVar
与写$var=$var+$newVar;
<?php
$product_orignalprice = $this->getProduct()->getPrice();
$discountedprice=$_item->getPrice();
$todatlsaving=$product_orignalprice-$discountedprice;
$finaltot+=$todatlsaving * $this->getQty();
echo $finaltot;
?>
然而,您可以在循环内部使用一个数组,并在结束时完成并计算价格(以及您需要对数组执行的任何其他操作)。
您可以使用公共函数编写一个类并将数据保存在那里,以便继续添加到类的属性中。
在编程中,通常有很多方法可以做某事。使用最灵活的,最容易阅读的其他人阅读代码或最有效的代码 - 取决于您需要实现的目标。
编辑:如果您在循环中编写echo
语句,它当然会在每次循环运行时显示累计总数 - 在您的示例中它将输出10 23 73
。如果你运行循环递增变量然后实际echo
循环后的最终数字,你将得到你想要的。