今天无意中发现了Math函数,感觉很好用,稍加修改就可以达到上述效果:
  <!--
{math equation=x x=0 assign=i}--> 
<!--{section name=smartyVar loop=10 }--> 
<!--{math equation=$i+1 assign=i}--> 
<br /> 
<!--{$i}--> 
<br /> 
<!--{/section}--> 


输出效果:

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 

<br /> 
10 
<br /> 

如果$i的初始值不是0,例如1,”math equation=x x=1 assign=i”还可以写成”math equation=1 assign=i”,省略其中的x变量.是0时不可以省,否则会出现警告信息Warning: Smarty error: math: missing equation parameter 
虽然在模板中再为变量赋值不是一个好主意,但真的需要时可以按上面的方法试一下:)