smarty相加

jackxiang 2008-8-26 19:40 | |
参考:http://www.touchboy.cn/html/2006/09/%E5%B7%A7%E7%94%A8math%E5%87%BD%E6%95%B0%E5%9C%A8smarty%E6%A8%A1%E6%9D%BF%E4%B8%AD%E7%BB%99%E5%8F%98%E9%87%8F%E5%8A%A8%E6%80%81%E8%B5%8B%E5%80%BC.html

今天无意中发现了Math函数,感觉很好用,稍加修改就可以达到上述效果:


输出效果:

<br />
1
<br />

<br />
2
<br />

<br />
3
<br />

<br />
4
<br />

<br />
5
<br />

<br />
6
<br />

<br />
7
<br />

<br />
8
<br />

<br />
9
<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
虽然在模板中再为变量赋值不是一个好主意,但真的需要时可以按上面的方法试一下:)


  {$equation}

今天需要用到在smarty模版中将两个变量加起来,根据经验试了好几次,但是都失败了。
googel了一下原来在smarty中将两个变量相加是有专门的函数和结构的,与博友们共享一下:)

{* $height=4, $width=5 *}
{math equation="x + y" x=$height y=$width}
OUTPUT:
9


{* $row_height = 10, $row_width = 20, #col_div# = 2, assigned in template *}
{math equation="height * width / division"
      height=$row_height
      width=$row_width
      division=#col_div#}
OUTPUT:
100


{* you can use parenthesis *}
{math equation="(( x + y ) / z )" x=2 y=10 z=2}
OUTPUT:
6


{* you can supply a format parameter in sprintf format *}
{math equation="x + y" x=4.4444 y=5.0000 format="%.2f"}
OUTPUT:
9.44

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/1207/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2011-9-9 12:30
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]