欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ThinkPHP模板范围判断输出In标签与Range标签用法详解

程序员文章站 2023-11-17 12:45:34
thinkphp模板的in标签与range标签用于判断某个模板变量是否在某个范围之内。 1.in标签 thinkphp的in标签用于某个模板变量是否在某个范围之内,使用...

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标签。