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下关于中英数字混排的字符串分割问题
Apr 06 PHP
php的一些小问题
Jul 03 PHP
php set_time_limit()函数的使用详解
Jun 05 PHP
深入掌握include_once与require_once的区别
Jun 17 PHP
关于js和php对url编码的处理方法
Mar 04 PHP
zf框架的registry(注册表)使用示例
Mar 13 PHP
Smarty foreach控制循环次数的一些方法
Jul 01 PHP
php分页查询的简单实现代码
Mar 14 PHP
PHP数据库操作三:redis用法分析
Aug 16 PHP
PHP闭包定义与使用简单示例
Apr 13 PHP
PHP JWT初识及其简单示例
Oct 10 PHP
在PHP中输出JS语句以及乱码问题的解决方案
Feb 13 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
《Re:从零开始的异世界生活 冰结之绊》
2020/04/09 日漫
PHP脚本的10个技巧(6)
2006/10/09 PHP
刚才在简化php的库,结果发现很多东西
2006/12/31 PHP
PHP表单提交表单名称含有点号(.)则会被转化为下划线(_)
2011/12/14 PHP
php中Y2K38的漏洞解决方法实例分析
2014/09/22 PHP
php基于双向循环队列实现历史记录的前进后退等功能
2015/08/08 PHP
PHP7之Mongodb API使用详解
2015/12/26 PHP
PHP实现接收二进制流转换成图片的方法
2017/01/10 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
2017/11/12 PHP
学习jquery必备 api中英文对照的chm手册 下载
2007/05/03 Javascript
Jquery 高亮显示文本中重要的关键字
2009/12/24 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
2014/01/02 Javascript
Javascript和Java获取各种form表单信息的简单实例
2014/02/14 Javascript
用Jquery.load载入页面后样式没了页面混乱的解决方法
2014/10/20 Javascript
chrome不支持form.submit的解决方案
2015/04/28 Javascript
使用jspdf生成pdf报表
2015/07/03 Javascript
Angular实现的简单查询天气预报功能示例
2017/12/27 Javascript
使用sessionStorage解决vuex在页面刷新后数据被清除的问题
2018/04/13 Javascript
使用jQuery给Table动态增加行、清空table的方法
2018/09/05 jQuery
Vue实现表格中对数据进行转换、处理的方法
2018/09/06 Javascript
vue-router懒加载速度缓慢问题及解决方法
2018/11/25 Javascript
Node Express用法详解【安装、使用、路由、中间件、模板引擎等】
2020/05/13 Javascript
浅谈nuxtjs校验登录中间件和混入(mixin)
2020/11/06 Javascript
Windows下PyMongo下载及安装教程
2015/04/27 Python
关于python字符串方法分类详解
2019/08/20 Python
AmazeUI在模态框中嵌入表单形成模态输入框
2020/08/20 HTML / CSS
ECCO爱步美国官网:来自丹麦的鞋履品牌
2016/11/23 全球购物
布鲁明戴尔百货店:Bloomingdale’s
2016/12/21 全球购物
澳大利亚女装精品店:Alannah Hill
2020/07/29 全球购物
linux面试相关问题
2013/04/28 面试题
传统软件工程与面向对象的软件工程有什么区别
2012/05/31 面试题
人力资源经理的岗位职责范本
2014/02/28 职场文书
党支部对照检查材料
2014/08/25 职场文书
公司感恩节活动策划书
2014/10/11 职场文书
药品开票员岗位职责
2015/04/15 职场文书
k-means & DBSCAN 总结
2021/04/27 Python