ThinkPHP 模板 in 标签与 range 标签用于判断某个模板变量是否在某个范围之内。
in 标签
in 标签用于某个模板变量是否在某个范围之内,格式如下:
<in name="变量名" value="值1,值2,...">要输出的内容</in>
例子:
在模块操作(如 Index/display )里设定变量并赋值给模板:
$groupId = 1; $this->assign( "groupId", $groupId );
模板( /Tpl/default/Index/display.html )使用 in 标签:
<in name="groupId" value="1,2,3">管理群组</in>
运行该例子,输出:
管理群组
该例子等同于:
<?php if(in_array(($groupId), explode(',',"1,2,3"))){ echo '管理群组'; } ?>
变量的值也可以是字符串或者数组,value 属性的值可以使用变量。
notin 标签
对应的还有个 notin 标签,为 in 标签的反义,即判断不在某个范围内:
<notin name="groupId" value="1,2,3">非管理群组</notin>
两个标签合并起来等同于:
<in name="groupId" value="1,2,3">管理群组<else />非管理群组</in>
range 标签
in 和 notin 标签也可以使用 range 标签来替代:
<range name="groupId" value="1,2,3" type="in" >管理群组</range>
上面的例子相当于 in 标签,当 type 属性的值为 notin 时就相当于 notin 标签。
原文地址:http://www.5idev.com/p-thinkphp_tpl_in_range.shtml