2010-04-06 55 views
1

我在结账时有一个“折扣前价格”的清单,我想在底部的新div中计算这些总额。任何想法?如何用smarty php计算总计

我想什么来计算:

{if $item.Product.formattedListPrice} 
<div id="salg" title="Rabatt"></div> 
{/if} 
<div id="cart2Salg"> 
{if $item.Product.formattedListPrice} 
    <span class="listPrice" title="Opprinnelige prisen"> 
    {$item.Product.formattedListPrice.$currency} 
    </span> 
    {else} 
    <span class="listPrice"> 

    </span> 

{/if} 
</div> 

以及如何我试图计算它:

{foreach $item.Product.formattedListPrice.$currency as $savedtotal} 
    <div id="savedtotals"> {$savedtotal.formattedAmount.$currency}</div> 
{/foreach} 

感谢。

+3

模板用来显示数据,不计算。所有计算必须在业务逻辑部分完成。 – 2010-04-06 07:59:08

+0

谢谢,那么我需要找出如何到达业务逻辑部分,以及如何做到这一点。 – Kyle 2010-04-06 08:01:40

回答

3

通常,您会将所有数据都准备好用于业务逻辑中的模板。在极少数情况下,尽管您可能想要执行与格式相关的示例计算,您可以通过Smarty的math function

对于您目前的情况下,你可以使用:

{math equation="x * y" x=$savedtotal.formattedAmount y=$currency format="%.2f"} 
+0

谢谢,我该如何使用X * Y部分?对不起,这对我来说是全新的:)我应该在那里放什么? – Kyle 2010-04-07 11:20:38

+0

公式属性定义要执行的计算。基本上你在那里设置变量的名字以及它们如何相互作用。然后,您需要像我向您展示的那样创建具有相同名称X和Y的属性,并为它们指定实际值。 请复制粘贴:{math equation =“x + y”x = 2 y = 2}并试验它是如何工作的。 – 2010-04-07 13:09:53