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 相关文章推荐
apache+php+mysql安装配置方法小结
Aug 01 PHP
PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
Dec 05 PHP
获取PHP警告错误信息的解决方法
Jun 03 PHP
解析php dirname()与__FILE__常量的应用
Jun 24 PHP
destoon实现首页显示供应、企业、资讯条数的方法
Jul 15 PHP
thinkphp区间查询、统计查询与SQL直接查询实例分析
Nov 24 PHP
PHP连接操作access数据库实例
Mar 30 PHP
PHP输出缓冲控制Output Control系列函数详解
Jul 02 PHP
php随机获取金山词霸每日一句的方法
Jul 09 PHP
php+ajax无刷新上传图片的实现方法
Dec 06 PHP
laravel ORM 只开启created_at的几种方法总结
Jan 29 PHP
thinkPHP5框架闭包函数与子查询传参用法示例
Aug 02 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
极典R601SW收音机
2021/03/02 无线电
PHP语法速查表
2006/12/06 PHP
解析数组非数字键名引号的必要性
2013/08/09 PHP
使用SMB共享来绕过php远程文件包含的限制执行RFI的利用
2019/05/31 PHP
发布一个基于javascript的动画类 Fx.js
2010/11/05 Javascript
基于JQuery实现鼠标点击文本框显示隐藏提示文本
2012/02/23 Javascript
js 在定义的时候立即执行的函数表达式(function)写法
2013/01/16 Javascript
js原型继承的两种方法对比介绍
2014/03/30 Javascript
node.js入门教程迷你书、node.js入门web应用开发完全示例
2014/04/06 Javascript
简介JavaScript中toTimeString()方法的使用
2015/06/12 Javascript
jQuery基于ajax实现带动画效果无刷新柱状图投票代码
2015/08/10 Javascript
浅谈JavaScript的闭包函数
2016/12/08 Javascript
js实现按座位号抽奖
2017/04/05 Javascript
Javascript 之封装(Package)
2018/09/14 Javascript
浅谈VUE-CLI脚手架热更新太慢的原因和解决方法
2018/09/28 Javascript
使用javascript做时间倒数读秒功能的实例
2019/01/23 Javascript
vue基础之v-bind属性、class和style用法分析
2019/03/11 Javascript
微信小程序云开发(数据库)详解
2019/05/17 Javascript
vue拖拽组件 vuedraggable API options实现盒子之间相互拖拽排序
2019/07/08 Javascript
vue 重塑数组之修改数组指定index的值操作
2020/08/09 Javascript
Python函数的周期性执行实现方法
2016/08/13 Python
Python实现的概率分布运算操作示例
2017/08/14 Python
Python之dict(或对象)与json之间的互相转化实例
2018/06/05 Python
python3将视频流保存为本地视频文件
2018/06/20 Python
解决Django生产环境无法加载静态文件问题的解决
2019/04/23 Python
Pycharm自带Git实现版本管理的方法步骤
2020/09/18 Python
pandas使用函数批量处理数据(map、apply、applymap)
2020/11/27 Python
Python实现树莓派摄像头持续录像并传送到主机的步骤
2020/11/30 Python
Python绘制数码晶体管日期
2021/02/19 Python
菲律宾优惠券网站:MetroDeal
2019/04/12 全球购物
日语求职信范文
2013/12/17 职场文书
手工社团活动方案
2014/02/17 职场文书
广告学专业求职信
2014/06/19 职场文书
2014年仓管员工作总结
2014/11/18 职场文书
2015年销售员工作总结范文
2015/04/07 职场文书
2019暑假阅读倡议书
2019/06/24 职场文书