【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}