thinkphp 范围标签
范围判断标签包括in notin between notbetween四个标签,都用于判断变量是否中某个范围。
IN和NOTIN
用法: 假设我们中控制器中给id赋值为1:
$id = 1;
$this->assign('id',$id);
我们可以使用in标签来判断模板变量是否在某个范围内,例如:
<in name="id" value="1,2,3">
id在范围内
</in>
最后会输出:id在范围内
。
如果判断不在某个范围内,可以使用: id不在范围内 可以把上面两个标签合并成为:
<in name="id" value="1,2,3">
id在范围内
<else/>
id不在范围内
</in>
name属性还可以支持直接判断系统变量,例如:
<in name="Think.get.id" value="1,2,3">
$_GET['id'] 在范围内
</in>
更多的系统变量用法可以参考系统变量部分。
value属性也可以使用变量,例如:
<in name="id" value="$range">
id在范围内
</in>
$range变量可以是数组,也可以是以逗号分隔的字符串。
value属性还可以使用系统变量,例如:
<in name="id" value="$Think.post.ids">
id在范围内
</in>
BETWEEN 和 NOTBETWEEN
可以使用between标签来判断变量是否在某个区间范围内,可以使用:
<between name="id" value="1,10">
输出内容1
</between>
同样,可以使用notbetween标签来判断变量不在某个范围内:
<notbetween name="id" value="1,10">
输出内容2
</notbetween>
也可以使用else标签把两个用法合并,例如:
<between name="id" value="1,10">
输出内容1
<else/>
输出内容2
</between>
当使用between标签的时候,value只需要一个区间范围,也就是只支持两个值,后面的值无效,例如
<between name="id" value="1,3,10">
输出内容1
</between>
实际判断的范围区间是1~3
,而不是1~10
,也可以支持字符串判断,例如:
<between name="id" value="A,Z">
输出内容1
</between>
name属性可以直接使用系统变量,例如:
<between name="Think.post.id" value="1,5">
输出内容1
</between>
value属性也可以使用变量,例如:
<between name="id" value="$range">
输出内容1
</between>
变量的值可以是字符串或者数组,还可以支持系统变量。
<between name="id" value="$Think.get.range">
输出内容1
</between>
RANGE
也可以直接使用range标签,替换前面的判断用法:
<range name="id" value="1,2,3" type="in">
输出内容1
</range>
其中type属性的值可以用in/notin/between/notbetween,其它属性的用法和IN或者BETWEEN一致。
thinkphp 范围标签的更多相关文章
- thinkphp <volist>标签中 <if> 判断的写法
thinkphp <volist>标签中 <if> 判断的写法 <volist name="data" id="vo"> & ...
- thinkphp自定义标签库
thinkphp ~ php中 的类, 的成员变量, 本身是没有类型说明的, 那么我怎么知道它的类型呢? 或初始值呢? 通常在类定义中, 如果能给一个初始值的(对于已知简单类型的),最好给一个初始值, ...
- ThinkPHP Volist标签
Volist标签主要用于在模板中循环输出数据集或者多维数组. volist标签(循环输出数据) 闭合 非闭合标签 属性 name(必须):要输出的数据模板变量 id(必须):循环变量 offset(可 ...
- thinkphp 自定义标签
关于标签的个人理解是 拼凑php 字符串 通过eval()来进行,返回数据.过程应该是这样的,在模板中加入 定义标签为<mytag:list></mytag>,那么在mvc 中 ...
- ThinkPHP HTML标签代码和UBB互相转换
1.UBB 转为 HTML TP的扩展里面自带一个ubb方法,用这个方法就能把用户输入的ubb格式代码转换为HTML标签的代码.这里用到的基本知识就是正则表达式啦,今天先不讲正则表达式. 来看一下TP ...
- ThinkPHP - 自定义标签库 - 标签驱动
ThinkPHP 官方文档:http://document.thinkphp.cn/manual_3_2/taglib_driver.html 创建一个类,继承自TagLib类: <?php / ...
- Thinkphp自定义标签
1.定义TagLib目录和文件 TagLibSmarTop.class.php 2.配置文件 <?php return array( 'APP_AUTOLOAD_PATH'=>'@.Ta ...
- thinkphp if标签
1.thinkphp框架中的if标签,用于html页面中.在html中编写php代码 1).从控制器中得到数据在循环中if else 判断:<volist name="system_r ...
- THINKPHP include 标签动态加载文件
有时候需要在框架中动态的加载一些文件,文件名不确定,有控制器获取得到,想在模板中使用变量的形式进行加载,本以为这样写可以 结果不行 <include file="User/{$my_t ...
- thinkphp import标签
传统方式的导入外部JS和CSS文件的方法是直接在模板文件使用: 直线电机哪家好 <script type='text/javascript' src='/Public/Js/Util/Array ...
随机推荐
- .Net平台调用の初识
前言 工作过程中难免遇到混合编程,现在我们要谈的是C#和c++语言的编程.C#要调用C++的库目前可选主要有两种方式:Com技术和平台调用(P/Invoke).现在我们要谈的是P/Invoke技术. ...
- 关于springmvc与ajax的交互-开发记录
每次都栽在这个地方,好衰! 在jsp页面的<form>标签设置了action="请求url" ,button那里用js进行监听,点击触发ajax方法,将前台数据传到后台 ...
- actionlib学习
ROS中的服务service是一问一答的形式,你来查询了,我就返给你要的信息. action也有服务的概念,但是它不一样的地方是:不是一问一答,而多了一个反馈,它会不断反馈项目进度. 如navigat ...
- tomcat之redis
Nginx服务器:[root@nginx ~]# vim /usr/local/nginx/conf/nginx.confupstream tomcat_pool { server 192.168.2 ...
- 更强大的实时数仓构建能力!分析型数据库PostgreSQL 6.0新特性解读
阿里云 AnalyticDB for PostgreSQL 为采用MPP架构的分布式集群数据库,完备支持SQL 2003,部分兼容Oracle语法,支持PL/SQL存储过程,触发器,支持标准数据库事务 ...
- 思维题——牛客多校第六场D
这题的不能用二分做,因为不满足单调性的 可以用multiset做 #include<bits/stdc++.h> #define ll long long #define rep(i,a, ...
- 扫描线+树状数组——cf1191F
把所有点离散化,虚构一根扫描线从上往下扫,每行的点从左往右算贡献,开一个树状数组维护每个离散化后的x坐标是否已经有点 扫描到一个点时,先把这个点更新到树状数组里,每个点的贡献是它左边的所有点数*到它相 ...
- NOIp2018集训test-9-7(pm) (联考一day1)
又被辉神吊打了.今天不仅被辉神李巨吊打,还给基本上给全班垫底了. 看到T3就知道是十进制快速幂,全机房考试的当时应该就我会,结果我tm没找到递推. Orz lyc BM直接水过,Orz wys六个fo ...
- java带jar编译与运行
javac -classpath ./wxpay-sdk-0.0.3.jar HttpsTest2.java java -cp .:./wxpay-sdk-0.0.3.jar HttpsTest2
- Rabbit MQ 基础入门
Rabbit MQ 学习(一)基础入门 简介 RabbitMQ 简介 为什么选择 RabbitMQ RabbitMQ 的模型架构是什么? AMQP 协议是什么? AMQP 常用命令 概念 生产者和消费 ...