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中的日期处理方法集锦
Jan 02 PHP
PHP时间戳 strtotime()使用方法和技巧
Oct 29 PHP
浅析PHP程序设计中的MVC编程思想
Jul 28 PHP
php上传文件常见问题总结
Feb 03 PHP
ThinkPHP实现更新数据实例详解(demo)
Jun 29 PHP
php 实现Hash表功能实例详解
Nov 29 PHP
详谈phpAdmin修改密码后拒绝访问的问题
Apr 03 PHP
PHP编程获取音频文件时长的方法【基于getid3类】
Apr 20 PHP
PHP实现防止表单重复提交功能【基于token验证】
May 24 PHP
PHP 爬取网页的主要方法
Jul 13 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
Oct 16 PHP
浅谈Laravel中使用Slack进行异常通知
May 29 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删除页面记录 同时刷新页面 删除条件用GET方式获得
2012/01/10 PHP
PHP取余函数介绍MOD(x,y)与x%y
2014/05/15 PHP
PHP访问Google Search API的方法
2015/03/05 PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
2016/11/16 PHP
php使用json-schema模块实现json校验示例
2019/09/28 PHP
javascript window对象属性整理
2009/10/24 Javascript
使用jquery修改表单的提交地址基本思路
2014/06/04 Javascript
javascript结合ajax读取txt文件内容
2014/12/05 Javascript
zepto.js中tap事件阻止冒泡的实现方法
2015/02/12 Javascript
使用npm发布Node.JS程序包教程
2015/03/02 Javascript
JavaScript注入漏洞的原理及防范(详解)
2016/12/04 Javascript
Thinkphp5微信小程序获取用户信息接口的实例详解
2017/09/26 Javascript
Vue中父子组件通讯之todolist组件功能开发
2018/05/21 Javascript
详解Chart.js轻量级图表库的使用经验
2018/05/22 Javascript
webpack4+express+mongodb+vue实现增删改查的示例
2018/11/08 Javascript
vue-router 起步步骤详解
2019/03/26 Javascript
微信小程序websocket实现即时聊天功能
2019/05/21 Javascript
element-ui 中使用upload多文件上传只请求一次接口
2019/07/19 Javascript
p5.js临摹动态图形的方法
2019/10/23 Javascript
如何通过vscode运行调试javascript代码
2020/07/24 Javascript
javascript实现前端分页功能
2020/11/26 Javascript
详解Python中的循环语句的用法
2015/04/09 Python
Python中模块与包有相同名字的处理方法
2017/05/05 Python
Python 调用Java实例详解
2017/06/02 Python
Python多线程threading和multiprocessing模块实例解析
2018/01/29 Python
python利用wx实现界面按钮和按钮监听和字体改变的方法
2019/07/17 Python
django中瀑布流写法实例代码
2019/10/14 Python
彻底搞懂 python 中文乱码问题(深入分析)
2020/02/28 Python
芬兰设计商店美国:Finnish Design Shop US
2019/03/25 全球购物
会计专业自荐信范文
2013/12/02 职场文书
国贸专业的职业规划书
2014/03/15 职场文书
机械专业求职信范文
2014/07/15 职场文书
村级个人对照检查材料
2014/08/22 职场文书
2014年镇党建工作汇报材料
2014/11/02 职场文书
本科毕业论文指导教师评语
2014/12/30 职场文书
python中pymysql包操作数据库方法
2022/04/19 Python