ThinkPHP模板的in标签与range标签用于判断某个模板变量是否在某个范围之内。
1.in标签
ThinkPHP的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代码等同于:
<?php if(in_array(($groupId), explode(',',"1,2,3"))){ echo '管理群组'; } ?>
注:变量的值也可以是字符串或者数组,value 属性的值可以使用变量。
2.notin 标签
与in标签对应的还有个notin标签,即判断不在某个范围内:
用法如:
<notin name="groupId" value="1,2,3">非管理群组</notin>
上述两个标签示例合并起来就等同于:
<in name="groupId" value="1,2,3">管理群组<else />非管理群组</in>
3.range 标签
ThinkPHP的in和notin标签也可以使用range标签来替代,如:
<range name="groupId" value="1,2,3" type="in" >管理群组</range>
上面的例子相当于in标签,当type属性的值为notin时就相当于notin标签。