将循环变量值存储在循环中的单个变量中

时间:2015-06-29 10:24:21

标签: php loops

在下面,我使用循环显示折扣$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(); 

?>

1 个答案:

答案 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循环后的最终数字,你将得到你想要的。