Smarty的回合显示错误的结果

时间:2013-07-31 14:58:36

标签: smarty rounding

在我的Smarty 3模板中,我有这段代码:

{$a=8.34}
{$b=8.33}
{$a-$b|round:2}

预期结果为: 0.01

但我收到了这个: 0.0099999999999998

有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:12)

Smarty2将修饰符应用于完整表达式的结果。

Smarty3只是直接前置值。

所以在Smarty3中你必须使用括号:

{($a-$b)|round:2} 

那应该解决它。