小码哥的IT人生

首页 > PHP > thinkPHP

【ThinkPHP6系列学习笔记3】模板渲染 操作实例详解

thinkPHP 2023-06-21 17:28:20小码哥的IT人生shichen

视图功能由 \think\View 类配合视图驱动(也即模板引擎驱动)类一起完成,新版仅内置了PHP原生模板引擎(主要用于内置的异常页面输出),如果需要使用其它的模板引擎需要单独安装相应的模板引擎扩展。

视图相关的配置在配置目录的 view.php 配置文件中进行定义。

通常可以直接使用 think\facade\View 来操作视图。


一、下载依赖库

如果你需要使用 think-template 模板引擎,只需要安装 think-view 模板引擎驱动。


composer    require    topthink/think-view
 

二、控制器引用类文件

引用View类,用来给模板赋值并渲染模板

use think\facade\View;
 

三、分配变量

因为TP6取消了 \think\Controller类,所以只能使用引用View类,并通过类名::方法名的形式给模板赋值。

//    模板变量赋值
View::assign('name','ThinkPHP');
View::assign('email','thinkphp@qq.com');
//    或者批量赋值
View::assign([
    'name'        =>    'ThinkPHP',
    'email'    =>    'thinkphp@qq.com'
});

四、模板渲染

模板渲染同样使用类名::方法名,需要引入View类;也可以直接使用view助手函数,使用助手函数不需要引入View类。

//    模板输出
return    View::fetch('index');
// 或者使用助手函数
return    view('index');

五、完整代码

控制器

<?php
declare (strict_types = 1);
namespace app\index\controller;
use think\Request;
use think\facade\View;
class Index
{
    /**
     * 显示资源列表
     *
     * @return \think\Response
     */
    public function index()
    {
        //  模板变量赋值
        View::assign('name','ThinkPHP6');
        View::assign('email','thinkphp@qq.com');
        //  模板输出
        return  View::fetch('index');
    }
}

前端

这是index.html<br>
name:{$name}<br/>
email:{$email}

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024