thinkphp 模板 php,ThinkPHP 模板

模板概述

PHP 中模板设计的初衷是将代码和页面分离出来分别处理,即显示与逻辑分离。使用模板可以让代码脉络更加清晰,结构更加合理化。当我们要将一些数据展示给用户浏览器的时候,就需要用到模板。

采用了模板机制后比 PHP 与 HTML 代码混写在执行效率上会有一定的损失。

ThinkPHP 内置了一套具有TP特色的,很强大易扩展且应用非常方便兼简单的模板引擎。

ThinkPHP 模板默认存放于 Tpl 目录,其定义规则为:

模板目录/模板主题/[分组名/]模块名/操作名+模板后缀

模板主题功能是为了多模板切换而设计的,默认主题为 default 。模板文件的默认后缀的情况是 .html 。

在前面的例子中,如Index模块的index操作,那么对应的模板就是:

Tpl/default/Index/index.html

模板赋值与输出

模块中的操作(方法)分为模板输出和不输出模板两类,而一个输出模板的操作对应一个模板。

在操作中使用 assign 方法对模板变量赋值,以便于在模板中输出该变量从而展示给用户。

模板变量赋值格式如下:

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

//或者下面的写法:

$this->name = $value;

$value 可以是单一变量或者数组甚至对象等 PHP 语法支持输出的变量。

在操作中使用 display 方法来实现模板向浏览器的输出,格式如下:

$this->display();

模板赋值输出例子

打开 Lib/Action/Index/IndexAction.class.php 文件,编辑 index 操作:

class IndexAction extends Action{

public function index(){

$username = "admin";

// 数组

$otherinfo = array();

$otherinfo['email'] = 'admin@5idev.com';

$otherinfo['regdate'] = '1281030876';

// 模板变量赋值

$this->assign( "username", $username );

$this->assign( "otherinfo", $otherinfo );

//输出模板

$this->display();

}

}

?>

ThinkPHP 中还允许输出跨模块和操作输出模板,也允许输出不同主题的模板,详细内容参见本节内容《ThinkPHP 模板输出 display 方法》部分。

创建模板

打开 Tpldefault 文件夹,根据命名规则,创建一个名为 Index 的文件夹。进入 Index 文件夹,创建一个名为 index.html 的文件:

{$Think.config.101_SITENAME}

用 户 名:{$username}

电子邮件:{$userinfo["email"]}

注册时间:{$userinfo["regdate"]|date="Y-m-d H:i",###}

模板变量输出

上面已经将操作中的变量赋值给了模板,并且创建输出了模板,最后一步就是将模板变量输出展示给用户。

模板变量输出格式如下:

{$变量名称}

如上面的模板例子所示,该例子输出了一个普通变量和一个数组变量。更多关于模板变量输出,参见本节内容《ThinkPHP 模板变量输出》部分。

在浏览器访问该操作:

http://127.0.0.1/html/myapp/index.php/Index/index

浏览器显示如下:

用 户 名:admin

电子邮件:xxxx@xxx.com

注册时间:2010-08-06 01:54

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值