ThinkPHP模板IF标签用法详解


Posted in PHP onJuly 01, 2014

ThinkPHP的IF标签可以用来定义复杂的条件判断,例如:

<if condition="($name eq 1) OR ($name gt 100) "> value1
<elseif condition="$name eq 2" />value2
<else /> value3
</if>

注意:在condition属性中可以支持eq等判断表达式 ,同上面的比较标签,但是不支持带有”>”、”<”等符号的用法,因为会混淆模板解析,所以下面的用法是错误的:

<if condition="$id < 5 "> value1
<else /> value2
</if>

必须改成:

<if condition="$id lt 5 "> value1
<else /> value2
</if>

除此之外,我们可以在condition属性里面使用php代码,例如:

<if condition="strtoupper($user['name']) neq 'THINKPHP' "> ThinkPHP
<else /> other Framework
</if>

condition属性可以支持点语法和对象语法,例如自动判断user变量是数组还是对象:

<if condition="$user.name neq 'ThinkPHP' "> ThinkPHP
<else /> other Framework
</if>

或者知道user变量是对象

<if condition="$user:name neq 'ThinkPHP' "> ThinkPHP
<else /> other Framework
</if>

注意:由于if标签的condition属性里面基本上使用的是php语法,尽可能使用判断标签和Switch标签会更加简洁,原则上来说,能够用switch和比较标签解决的尽量不用if标签完成。因为switch和比较标签可以使用变量调节器和系统变量。如果某些特殊的要求下面,IF标签仍然无法满足要求的话,可以使用原生php代码或者PHP标签来直接书写代码

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php 中include()与require()的对比
Oct 09 PHP
请php正则走开
Mar 15 PHP
php代码中使用换行及(\n或\r\n和br)的应用
Feb 02 PHP
简单的php缓存类分享     php缓存机制
Jan 22 PHP
自己写的php curl库实现整站克隆功能
Feb 12 PHP
codeigniter实现get分页的方法
Jul 10 PHP
PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
Sep 11 PHP
详谈php中 strtr 和 str_replace 的效率问题
May 14 PHP
php静态成员方法和静态的成员属性的使用方法
Oct 26 PHP
php实现表单提交上传文件功能
May 28 PHP
phpinfo无法显示的原因及解决办法
Feb 15 PHP
php pdo连接数据库操作示例
Nov 18 PHP
PHP使用GIFEncoder类生成gif动态滚动字幕
Jul 01 #PHP
PHP使用GIFEncoder类生成的GIF动态图片验证码
Jul 01 #PHP
ThinkPHP模板范围判断输出In标签与Range标签用法详解
Jun 30 #PHP
ThinkPHP模板判断输出Empty标签用法详解
Jun 30 #PHP
ThinkPHP模板判断输出Defined标签用法详解
Jun 30 #PHP
ThinkPHP模板判断输出Present标签用法详解
Jun 30 #PHP
ThinkPHP模板比较标签用法详解
Jun 30 #PHP
You might like
overlord人气高涨,却被菲利普频繁举报,第四季很难在国内上映
2020/05/06 日漫
文件上传的实现
2006/10/09 PHP
PHP实现的构造sql语句类实例
2016/02/03 PHP
CodeIgniter分页类pagination使用方法示例
2016/03/28 PHP
PHP Yaf框架的简单安装使用教程(推荐)
2016/06/08 PHP
Aster vs KG BO3 第三场2.18
2021/03/10 DOTA
FLASH 广告之外的链接
2008/12/16 Javascript
jQuery 源码分析笔记(7) Queue
2011/06/19 Javascript
一样的table?不一样的table(可编辑状态table)
2012/09/19 Javascript
javascript实现TreeView 无刷新展开的实例代码
2013/07/13 Javascript
JQuery中的html()、text()、val()区别示例介绍
2014/09/01 Javascript
贴近用户体验的Jquery日期、时间选择插件
2015/08/19 Javascript
jQuery超酷平面式时钟效果代码分享
2020/03/30 Javascript
一个简单不报错的summernote 图片上传案例
2016/07/11 Javascript
JQuery遍历元素的后代和同胞实现方法
2016/09/18 Javascript
基于JavaScript实现焦点图轮播效果
2017/03/27 Javascript
Javascript中toFixed计算错误(依赖银行家舍入法的缺陷)解决方法
2017/08/22 Javascript
通过nodejs 服务器读取HTML文件渲染到页面的方法
2018/05/17 NodeJs
使用VUE实现在table中文字信息超过5个隐藏鼠标移到时弹窗显示全部
2019/09/16 Javascript
vue 重塑数组之修改数组指定index的值操作
2020/08/09 Javascript
python扫描proxy并获取可用代理ip的实例
2017/08/07 Python
python+matplotlib实现礼盒柱状图实例代码
2018/01/16 Python
用Django实现一个可运行的区块链应用
2018/03/08 Python
python如何对实例属性进行类型检查
2018/03/20 Python
用Python逐行分析文件方法
2019/01/28 Python
安装docker-compose的两种最简方法
2019/07/30 Python
python 经典数字滤波实例
2019/12/16 Python
Python 无限级分类树状结构生成算法的实现
2021/01/21 Python
Smashbox英国官网:美国知名彩妆品牌
2017/11/13 全球购物
怎样写离婚协议书
2014/09/10 职场文书
财务科长个人对照检查材料
2014/09/18 职场文书
2014年学校安全工作总结
2014/11/13 职场文书
初中生思想道德自我评价
2015/03/09 职场文书
暑假开始了,你的暑假学习计划写好了吗?
2019/07/04 职场文书
mysql查找连续出现n次以上的数字
2022/05/11 MySQL
win10系统计算机图标怎么调出来?win10调出计算机图标的方法
2022/08/14 数码科技