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 相关文章推荐
Oracle 常见问题解答
Oct 09 PHP
php框架Phpbean说明
Jan 10 PHP
为PHP初学者的8点有效建议
Nov 20 PHP
PHP 防注入函数(格式化数据)
Aug 08 PHP
PHP禁止页面缓存的代码
Oct 23 PHP
七款最流行的PHP本地服务器分享
Feb 19 PHP
浅析PHP微信支付通知的处理方式
May 25 PHP
PHP生成压缩文件实例
Feb 07 PHP
php实现base64图片上传方式实例代码
Feb 22 PHP
Laravel5.* 打印出执行的sql语句的方法
Jul 24 PHP
PHP常见过waf webshell以及最简单的检测方法
May 21 PHP
PHP Ajax跨域问题解决方案代码实例
Aug 01 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
php和jquery实现地图区域数据统计展示数据示例
2014/02/12 PHP
Drupal7连接多个数据库及常见问题解决
2014/03/02 PHP
使用PHP similar text计算两个字符串相似度
2015/11/06 PHP
PHP面向对象程序设计继承用法简单示例
2018/12/28 PHP
JS 创建对象(常见的几种方法)
2008/11/03 Javascript
jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、Chrome、Opera
2009/08/28 Javascript
《JavaScript高级程序设计》阅读笔记(一) ECMAScript基础
2012/02/27 Javascript
js获取IFRAME当前的URL的方法
2013/11/13 Javascript
第九章之路径分页标签与徽章组件
2016/04/25 Javascript
JS函数多个参数默认值指定方法分析
2016/11/28 Javascript
JS敏感词过滤代码
2016/12/23 Javascript
jQuery Ajax实现跨域请求
2017/01/21 Javascript
JavaScript中数组Array.sort()排序方法详解
2017/03/01 Javascript
jquery实现简单实用的轮播器
2017/05/23 jQuery
vue-resource请求实现http登录拦截或者路由拦截的方法
2018/07/11 Javascript
vue路由前进后退动画效果的实现代码
2018/12/10 Javascript
JS/HTML5游戏常用算法之碰撞检测 地图格子算法实例详解
2018/12/12 Javascript
微信小程序中使用 async/await的方法实例分析
2020/05/06 Javascript
three.js欧拉角和四元数的使用方法
2020/07/26 Javascript
解决vue请求接口第一次成功,第二次失败问题
2020/09/08 Javascript
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
深入解析Python中的descriptor描述器的作用及用法
2016/06/27 Python
Django自定义过滤器定义与用法示例
2018/03/22 Python
CSS3中currentColor关键字的妙用
2016/02/27 HTML / CSS
巴西Bo.Bô官方在线商店:经营奢侈品时尚业务
2020/03/16 全球购物
生产副总岗位职责
2013/11/28 职场文书
公益广告宣传方案
2014/02/28 职场文书
小学生感恩演讲稿
2014/04/25 职场文书
财务管理专业求职信
2014/06/11 职场文书
司法工作人员群众路线对照检查材料思想汇报
2014/09/30 职场文书
学校师德师风整改措施
2014/10/27 职场文书
2015年保险公司工作总结
2015/04/24 职场文书
Python 中数组和数字相乘时的注意事项说明
2021/05/10 Python
Pytorch 如何实现LSTM时间序列预测
2021/05/17 Python
Python docx库删除复制paragraph及行高设置图片插入示例
2022/07/23 Python
windows10声卡驱动怎么安装?win10声卡驱动安装操作步骤教程
2022/08/05 数码科技