ThinkPHP模板引擎提供了丰富的比较标签,其用法格式为:
1
|
<比较标签 name= "变量" value= "值" >内容</比较标签> |
ThinkPHP系统支持的比较标签及其所表示的含义分别是:
eq或者 equal:等于
neq 或者notequal:不等于
gt:大于
egt:大于等于
lt:小于
elt:小于等于
heq:恒等于
nheq:不恒等于
1.比较标签的用法基本是一致的,区别在于判断的条件不同。
如eq标签:
1
|
<eq name= "name" value= "value" >value</eq> |
表示name变量的值等于value就输出。
或者也可写成:
1
|
<equal name= "name" value= "value" >value</equal> |
也可以支持和else标签混合使用,如:
1
|
<eq name= "name" value= "value" >相等< else />不相等</eq> |
gt标签使用如下:
1
|
<gt name= "name" value= "5" >value</gt> |
表示当 name变量的值大于5就输出
egt标签使用如下:
1
|
<egt name= "name" value= "5" >value</egt> |
表示当name变量的值不小于5就输出
2.比较标签中的变量可以支持对象的属性或者数组,甚至可以是系统变量:
eq标签示例如下:
1
|
<eq name= "vo.name" value= "5" >{ $vo .name}</eq> |
表示当vo对象的属性(或者数组,或者自动判断)等于5就输出
1
|
<eq name= "vo:name" value= "5" >{ $vo .name}</eq> |
表示当vo对象的属性等于5就输出
1
|
<eq name= "vo['name']" value= "5" >{ $vo .name}</eq> |
表示当$vo['name']等于5就输出
3.还可以支持对变量使用函数
如:
1
|
<eq name= "vo:name|strlen" value= "5" >{ $vo .name}</eq> |
表示当vo对象的属性值的字符串长度等于5就输出
4.变量名可以支持系统变量的方式,例如:
1
|
<eq name= "Think.get.name" value= "value" >相等< else />不相等</eq> |
5.通常比较标签的值是一个字符串或者数字,如果需要使用变量,只需要在前面添加“$”标志。
如:
1
|
<eq name= "vo:name" value= "$a" >{ $vo .name}</eq> |
表示当vo对象的属性等于$a就输出
6.所有的比较标签可以统一使用compare标签(其实所有的比较标签都是compare标签的别名),例如:
1
|
<compare name= "name" value= "5" type= "eq" >value</compare> |
表示当name变量的值等于5就输出
等效于
1
|
<eq name= "name" value= "5" >value</eq> |
其中type属性的值就是上面列出的比较标签名称