加入收藏 | 设为首页 | 会员中心 | 我要投稿 成都站长网 (https://www.028zz.cn/)- 科技、云开发、数据分析、内容创作、业务安全!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

ThinkPHP 模板

发布时间:2023-05-23 23:37:40 所属栏目:PHP教程 来源:转载
导读: 模板概述
PHP 中模板设计的初衷是将代码和页面分离出来分别处理,即显示与逻辑分离。使用模板可以让代码脉络更加清晰,结构更加合理化。当我们要将一些数据展示给用户浏览器的时候,就需要

模板概述

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 操作:

<?php
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 中还允许输出跨模块和操作输出模板,也允许输出不同主题的模板php模板,详细内容参见本节内容《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

(编辑:成都站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章