Thinkphp模板标签if和eq的区别和比较实例分析

本文实例讲述了Thinkphp模板标签if和eq的区别和比较。分享给大家供大家参考。具体分析如下:

在TP模板语言中。if和eq都可以用于变量的比较。总结以下几点:

1.两个变量的比较:

<if condition="$item.group_id eq $one.group_id">
<eq name="item.group_id" value="$one.group_id">

前者的IF是判断失败的,用后者的<neq>(或<eq>)则OK。需要注意:name那里是不用加$变量符号的,而value那里要加$变量符号。

2.还有值为空(NULL)的时候:

<if condition="name neq 'NULL'">just a test</if>
<neq name="name" velue="">just a test</neq>

前者的IF是判断失败的,用后者的<neq>(或<eq>)则可以识别null为""

3.多维数组且下标为0的时候:

<if condition="name.0 neq 'test'">just a test</if>
<eq name="name.0″ velue="test">just a test</eq>

前者用IF是根本不能通过编译的,用后面的eq就可以

希望本文所述对大家基于ThinkPHP的php程序设计有所帮助。

(0)

相关推荐

  • thinkphp使用literal防止模板标签被解析的方法

    本文实例讲述了thinkphp不解析标签直接输出,防止模板标签被解析的方法.分享给大家供大家参考.具体实现方法如下: 在ThinkPHP中可以使用literal标签来防止模板标签被解析,例如: 复制代码 代码如下: <literal> <if condition="$name eq 1 "> value1 <elseif condition="$name eq 2"/>value2 <else /> value3 &l

  • ThinkPHP模板比较标签用法详解

    ThinkPHP模板引擎提供了丰富的比较标签,其用法格式为: <比较标签 name="变量" value="值">内容</比较标签> ThinkPHP系统支持的比较标签及其所表示的含义分别是: eq或者 equal:等于 neq 或者notequal:不等于 gt:大于 egt:大于等于 lt:小于 elt:小于等于 heq:恒等于 nheq:不恒等于 1.比较标签的用法基本是一致的,区别在于判断的条件不同. 如eq标签: <eq na

  • ThinkPHP模板自定义标签使用方法

    使用模板标签可以让网站前台开发更加快速和简单,使用过dedecms.phpcms等内容管理系统的人应该都知道,cms的前台都是使用模板标签来调用数据.以调用文章列表为例: dedecms可以写成: <ul> {dede:arclist row='10' orderby='id desc' titlelen=''} <li>[field:title]</li> {/dede:arclist} </ul> phpcms可以写成: <ul> {pc:c

  • thinkPHP的Html模板标签使用方法

    注意:在使用如<html:select />等标签之前,必须要引入TP的标签库:<tagLib name="html" /> 如果我们现在需要一个select下拉菜单项,那么在ThinkPHP中我们可以这样做. 1.在Action控制器的方法中获取数据,举例如下: 复制代码 代码如下: public function mylist(){ $user = new Model('User'); $list = $user->getField('id,usern

  • ThinkPHP模板判断输出Defined标签用法详解

    ThinkPHP模板引擎的defined标签用于判断常量是否已经被定义. ThinkPHP的defined标签用来判断常量是否已经被定义,其功能相当于PHP中的defined()函数.defined标签用法如下: <present name="常量">要输出的内容</present> 先在模块操作(如:Index/display )里定义一个常量并输出模板: define("SITE_NAME", "我们"); $this

  • ThinkPHP模板判断输出Present标签用法详解

    ThinkPHP模板的present标签用于判断模板变量是否已经赋值. ThinkPHP模板引擎的present标签用来判断模板变量是否已经赋值,其功能相当于PHP中的isset()函数行为,格式如下: <present name="变量名">要输出的内容</present> 用法举例如下: <present name="username">{$username} 你好!</present> 该例子等同于: if(is

  • ThinkPHP模板判断输出Empty标签用法详解

    ThinkPHP模板的empty标签用于判断模板变量是否为空值. ThinkPHP模板empty标签用来判断模板变量是否为空值,其功能相当于PHP中的empty()函数行为.empty标签使用格式如下: <empty name="变量名">要输出的内容</empty> 具体用法如下例所示: <empty name="username">username 为空值</empty 该例子等同于: <?php if(empty

  • ThinkPHP模板循环输出Volist标签用法实例详解

    本文实例讲述了ThinkPHP模板循环输出Volist标签用法.分享给大家供大家参考,具体如下: volist 标签用于在模板中循环输出数据集或者多维数组. volist 标签 在模块操作中,select() 方法返回的是一个二维数组,可以用 volist 直接输出: <volist name="list" id="vo"> 用 户 名:{$vo['username']}<br /> 电子邮件:{$vo['email']}<br /&g

  • ThinkPHP模板Volist标签嵌套循环输出多维数组的方法

    本文实例讲述了ThinkPHP模板Volist标签嵌套循环输出多维数组的方法.分享给大家供大家参考,具体如下: ThinkPHP 中对 volist 标签嵌套使用可实现多维数组的输出. volist 嵌套使用 一般的二维数组,可以用 volist 标签直接循环输出.对于多维数组,则需要对其中的数组成员再次使用 volist 标签嵌套循环输出. 构建一个多维数组: $food = array(); $food[0]['fruits'][0]['fruits1'] = '苹果1'; $food[0]

  • ThinkPHP模板Switch标签用法示例

    ThinkPHP模板中的switch标签用于在模板中根据不同情况输出不同的值. ThinkPHP模板引擎支持switch判断,可根据不同条件输出不同的结果,使用格式如下: <switch name="变量名" > <case value="值1">输出内容1</case> <case value="值2">输出内容2</case> <default />默认情况 </s

  • Thinkphp的volist标签嵌套循环使用教程

    本文较为详细的对ThinkPHP的volist标签嵌套的用法阐述如下: 首先,在Thinkphp开发手册中,有关于<volist>标签嵌套的解释说明.如下: 标签嵌套: 模板引擎支持标签的多层嵌套功能,可以对标签库的标签指定可以嵌套. 系统内置的标签中,volist(及其别名iterate).switch.if.elseif.else.foreach.compare(包括所有的比较标签).(not)present.(not)empty.(not)defined等标签都可以嵌套使用.例如: &l

  • Thinkphp中的volist标签用法简介

    通常volist标签多用于查询数据集(select方法)的结果输出,通常模型的select方法返回的结果是一个二维数组,对此可以直接使用volist标签进行输出. 在控制器中首先对模版赋值,如下例所示: $User = M('User'); $list = $User->limit(10)->select(); $this->assign('list',$list); 在模版定义如下,循环输出用户的编号和姓名: <volist name="list" id=&q

  • ThinkPHP模板范围判断输出In标签与Range标签用法详解

    ThinkPHP模板的in标签与range标签用于判断某个模板变量是否在某个范围之内. 1.in标签 ThinkPHP的in标签用于某个模板变量是否在某个范围之内,使用格式如下: <in name="变量名" value="值1,值2,...">要输出的内容</in> 使用时,在模块操作(如 Index/display )里设定变量并赋值给模板: $groupId = 1; $this->assign( "groupId&qu

  • Thinkphp中volist标签mod控制一定记录的换行BUG解决方法

    本文实例讲述了Thinkphp中volist标签mod控制一定记录的换行BUG解决方法.分享给大家供大家参考.具体方法如下: 一.BUG描述: 存在于thinkphp 2.0 版本 Mod属性还用于控制一定记录的换行,例如: 复制代码 代码如下: <volist name="list" id="vo" mod="5" > {$vo.name} <eq name="mod" value="4"

随机推荐