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 相关文章推荐
SSI指令
Nov 25 PHP
使用adodb lite解决问题
Dec 31 PHP
在同一窗体中使用PHP来处理多个提交任务
May 08 PHP
提示Trying to clone an uncloneable object of class Imagic的解决
Oct 27 PHP
php旋转图片90度的方法
Nov 07 PHP
浅谈本地WAMP环境的搭建
May 13 PHP
php生成图片验证码-附五种验证码
Aug 19 PHP
Zend Framework基本页面布局分析
Mar 19 PHP
php实现图片上传、剪切功能
May 07 PHP
Yii2中如何使用modal弹窗(基本使用)
May 30 PHP
由php中字符offset特征造成的绕过漏洞详解
Jul 07 PHP
PHP实现转盘抽奖算法分享
Apr 15 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
一台收音机,让一家人都笑逐颜开!
2020/08/21 无线电
利用static实现表格的颜色隔行显示
2006/10/09 PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
2013/07/05 PHP
浅谈ThinkPHP中initialize和construct的区别
2017/04/01 PHP
PHP实现的简单异常处理类示例
2017/05/04 PHP
PHP连接MySQL数据库操作代码实例解析
2020/07/11 PHP
javascript 兼容鼠标滚轮事件
2009/04/07 Javascript
ajax 缓存 问题 requestheader
2010/08/01 Javascript
FireFox下XML对象转化成字符串的解决方法
2011/12/09 Javascript
JS获取DropDownList的value值与text值的示例代码
2014/01/07 Javascript
java、javascript实现附件下载示例
2014/08/14 Javascript
node.js中的fs.lchmod方法使用说明
2014/12/16 Javascript
js实现点击图片将图片地址复制到粘贴板的方法
2015/02/16 Javascript
javascript实现可拖动变色并关闭层窗口实例
2015/05/15 Javascript
纯javascript响应式树形菜单效果
2015/11/10 Javascript
Vue自定义弹窗指令的实现代码
2018/08/13 Javascript
jQuery实现的分页插件完整示例
2020/05/26 jQuery
python自动化测试之连接几组测试包实例
2014/09/28 Python
python编写暴力破解FTP密码小工具
2014/11/19 Python
Python正则表达式和re库知识点总结
2019/02/11 Python
Python2与Python3的区别点整理
2019/12/12 Python
Python Handler处理器和自定义Opener原理详解
2020/03/05 Python
Python常驻任务实现接收外界参数代码解析
2020/07/21 Python
Toppik顶丰增发纤维官网:解决头发稀疏
2017/12/30 全球购物
欧缇丽加拿大官方网站:Caudalie加拿大
2019/07/18 全球购物
企业管理培训感言
2014/01/27 职场文书
迟到检讨书5000字
2014/01/31 职场文书
40岁生日感言
2014/02/15 职场文书
优秀员工推荐信
2014/05/10 职场文书
教师党员学习十八届四中全会思想汇报
2014/11/03 职场文书
golang switch语句的灵活写法介绍
2021/05/06 Golang
Python 实现定积分与二重定积分的操作
2021/05/26 Python
MySQL系列之六 用户与授权
2021/07/02 MySQL
关于EntityWrapper的in用法
2022/03/22 Java/Android
《总之就是很可爱》新作短篇动画《总之就是很可爱~制服~》将于2022年夏天播出
2022/04/07 日漫
德生2P3收音机开箱评测
2022/04/30 无线电