smarty模板中如何生成随机数
现在假设在smarty模板中需要生成一个125-324之间的随机数,那么可以按如下写法:
{math equation=rand(125,324)}
这样就实现了我们的目的了,怎么样?是不是很简单,其实这里主要用到了smarty模板中的math函数,下面对smarty math函数的作用以及用法做个简要的讲解。
math 允许模板设计者在模板中进行数学表达式运算. 均表达式中可以使用任何数值类型的变量,结果在 math 标签的位置输出. 表达式中使用的变量被当做参数传递给函数,可以是模板变量或静态值. 目前可以使用的运算符有:+, -, /, *, abs, ceil, cos, exp, floor, log, log10, max, min, pi, pow, rand, round, sin, sqrt, srans 和 tan .关于数学函数的详细信息,请查看 PHP 文档。
如果指定了 "assign" 这个特殊属性,该函数的输出值将被赋给由 assign 指定的模板变量,而不是直接输出。
不过需要注意的是: 由于使用了 php 的 eval() 函数,math 函数的执行效率不高. 在 PHP 中做数学运算效率会更高一些,因此要尽可能在 PHP 中做数学运算,将结果赋给模板变量。
smarty math 函数演示
{* $height=4, $width=5 *}
{math equation="x + y" x=$height y=$width}
输出结果: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#}
输出结果:100
{* you can use parenthesis http://www.phpernote.com/tag/smarty*}
{math equation="(( x + y ) / z )" x=2 y=10 z=2}
输出结果:6
{* you can supply a format parameter in sprintf format *}
{math equation="x + y" x=4.4444 y=5.0000 format="%.2f"}
输出结果:9.44
您可能感兴趣的文章
- smarty模板中给信息添加最新标签
- smarty模板中判断数组为空的方法
- smarty模板中使用php函数以及smarty模板中如何对一个变量使用多个函数
- smarty模板中for循环的扩展插件
- smarty 模板中循环表格补充不全的td
- smarty模板保留变量总结
- 程序中通过define定义的常量如何在smarty模板中使用
- Smarty模板变量操作符总结
上一篇: PHP内核探索:Zend虚拟机
下一篇: QT中使用fontawesome
推荐阅读
-
smarty模板中如何生成随机数
-
smarty模板文件tpl中在写输出的时分会变量名后面的“|h”是什么含义
-
smarty模板中的斜杠的定义到底在哪里
-
smarty模板中for循环的扩展插件
-
smarty模板文件tpl中在写输出的时候会变量名后面的“|h”是什么含义
-
smarty模板中使用php函数以及smarty模板中如何对一个变量使用多个函数
-
PHP模板引擎Smarty中的保留变量用法分析,模板smarty
-
smarty模板文件tpl中在写输出的时分会变量名后面的“|h”是什么含义
-
PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例,模板smarty
-
PHP模板引擎Smarty中变量的使用方法示例,模板smarty