新闻中心

thinkphp3.0基础模板引擎变量为空时输出默认值

作者 / 无忧主机 时间 2012-09-24 13:33:36

在thinkphp的模板引擎中,如果输出的变量是空的,但我们的设计需求又不想让这里空出一大块,需要给这个变量指定一个默认值,也就是说,如果这个变量为空,就显示我们指定的默认值。那么这个可不可以在thinkphp的模板引擎里面实现呢?实现当然是可以的,有的同学可能会疑问,直接用if去判断不就可以实现了吗?呵呵,因为是在模板里面,如果在里面写大量的php代码,就达不到MVC的那个效果了,在模板里面尽量全部用标签来处理,其实在thinkphp里面有一个语法规则,格式是这样: {$变量|default="默认值"} 这里的default不是函数,而是系统的一个语法规则,例如: {$name|default='名称为空'} 对于一些系统变量的输出,也是可以支持默认值的哦,比如获取post和get参数的时候,而且这个默认值是可以支持HTML语法的,很强大吧!下面小编通过一个例子来演示这个默认值的效果,无忧主机(www.51php.com)小编建议大家学习期间在本地搭建php虚拟主机的环境,方便调试! 在默认控制器(IndexAction.class.php)中加入以下代码:

<?php

class

IndexAction extends Action {

public function index(){

$name='';

$this->assign('name',$name);

$this->display();

}

}

?>
然后在其对应的模板(index.html)里面写如下代码,来测试下 name变量的值:<{$name|default='name的值为空'}> <br> get参数user的值:<{$Think.get.user|default='传递参数为空'}> 传递get参数的方法是http://localhost/index.php/index/index/user/test 用 / 分开,和传统不一样,关于几种URL模式还会在后面详细讲到的。保存好代码后就可以到浏览器中去访问测试了。   纯Linux环境下高端免备案香港独立IP地址 php空间,仅仅只需199元一年起。商务中国域名核心代理直销50元注册国际顶级域名

本文地址:https://www.51php.com/thinkphp/8678.html

1
1
1
1
1
1
1

客户服务热线

0791-8623-3537

在线客服