ThinkPHP5 模板渲染
来源:互联网 发布:达内java培训机构 编辑:程序博客网 时间:2024/05/16 13:02
调用模板引擎方法
我们可以单独设置当前模板渲染所使用的模板引擎,默认的采用think模板引擎,
是ThinkPHP内置的基于xml解析的编译型模板引擎。
可以在个别控制器方法中调用engine方法切换其它的模板引擎来进行模板渲染,例如:
<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
public function index()
{
// 切换到原生PHP渲染模板输出
return $this->engine('php')->fetch();
}
}
engine方法如果使用字符串表示模板引擎的名称,然后使用默认参数,
也可以传入模板引擎的参数数组,例如:
<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
public function index()
{
// 切换到原生PHP渲染模板输出
return $this->engine([
'type' => 'php', // 模板后缀
'view_suffix' => 'php', // 模板文件名分隔符
'view_depr' => DS,
])->fetch();
}
}
并且视图类提供了一个public类型的engine属性可以直接操作模板引擎实例,
你可以用来调用模板引擎的其它方法:
<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
public function index()
{
// 调用模板引擎的布局方法
$this->view->engine->layout('layout_name');
// 渲染模板输出
return $this->fetch();
}
}
使用其它模板引擎
默认还支持使用原生PHP作为模板(不需要编译),设置模板引擎的type参数为php即可,
下面的设置表示使用原生PHP文件作为模板文件(模板文件后缀设置为php),
然后在视图文件中只能使用PHP原生的语法:
'template' => [
// 模板引擎类型
'type' => 'php',
// 视图基础目录
'view_base' => '',
// 当前模板的视图目录 留空为自动获取
'view_path' => '',
// 模板后缀
'view_suffix' => 'php',
// 模板文件名分隔符
'view_depr' => DS, ],
目前除了内置的模板引擎之外,还有两个第三方模板引擎扩展,分别是:
Angular模板引擎扩展
https://github.com/top-think/think-angular
Twig模板引擎扩展 https://github.com/yunwuxin/think-twig
要使用第三方模板引擎扩展,通常需要使用Composer安装,以 Angular模板引擎扩展为例,使用:
composer require topthink/think-angular
安装后如果你需要调用第三方模板引擎,只需要在type参数中配置或者实例化的时候传入,例如:
'template' => [
// 配置使用第三方模板引擎
'type' => 'angular',
// 视图基础目录,配置目录为所有模块的视图起始目录
'view_base' => '',
// 当前模板的视图目录 留空为自动获取
'view_path' => '',
// 模板后缀
'view_suffix' => 'html',
// 模板文件名分隔符
'view_depr' => DS, ],
我们可以单独设置当前模板渲染所使用的模板引擎,默认的采用think模板引擎,
是ThinkPHP内置的基于xml解析的编译型模板引擎。
可以在个别控制器方法中调用engine方法切换其它的模板引擎来进行模板渲染,例如:
<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
public function index()
{
// 切换到原生PHP渲染模板输出
return $this->engine('php')->fetch();
}
}
engine方法如果使用字符串表示模板引擎的名称,然后使用默认参数,
也可以传入模板引擎的参数数组,例如:
<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
public function index()
{
// 切换到原生PHP渲染模板输出
return $this->engine([
'type' => 'php', // 模板后缀
'view_suffix' => 'php', // 模板文件名分隔符
'view_depr' => DS,
])->fetch();
}
}
并且视图类提供了一个public类型的engine属性可以直接操作模板引擎实例,
你可以用来调用模板引擎的其它方法:
<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
public function index()
{
// 调用模板引擎的布局方法
$this->view->engine->layout('layout_name');
// 渲染模板输出
return $this->fetch();
}
}
使用其它模板引擎
默认还支持使用原生PHP作为模板(不需要编译),设置模板引擎的type参数为php即可,
下面的设置表示使用原生PHP文件作为模板文件(模板文件后缀设置为php),
然后在视图文件中只能使用PHP原生的语法:
'template' => [
// 模板引擎类型
'type' => 'php',
// 视图基础目录
'view_base' => '',
// 当前模板的视图目录 留空为自动获取
'view_path' => '',
// 模板后缀
'view_suffix' => 'php',
// 模板文件名分隔符
'view_depr' => DS, ],
目前除了内置的模板引擎之外,还有两个第三方模板引擎扩展,分别是:
Angular模板引擎扩展
https://github.com/top-think/think-angular
Twig模板引擎扩展 https://github.com/yunwuxin/think-twig
要使用第三方模板引擎扩展,通常需要使用Composer安装,以 Angular模板引擎扩展为例,使用:
composer require topthink/think-angular
安装后如果你需要调用第三方模板引擎,只需要在type参数中配置或者实例化的时候传入,例如:
'template' => [
// 配置使用第三方模板引擎
'type' => 'angular',
// 视图基础目录,配置目录为所有模块的视图起始目录
'view_base' => '',
// 当前模板的视图目录 留空为自动获取
'view_path' => '',
// 模板后缀
'view_suffix' => 'html',
// 模板文件名分隔符
'view_depr' => DS, ],
阅读全文
0 0
- ThinkPHP5 模板渲染
- ThinkPHP5 模板渲染
- ThinkPHP5 模板渲染
- ThinkPHP5 模板渲染
- thinkPHP5-渲染模板的方式
- thinkphp5 使用__PUBLIC__等进行模板渲染输出
- Thinkphp5模板引入
- ThinkPHP5模板分离
- thinkPHP5模板布局
- 渲染模板
- 模板 渲染
- 渲染模板
- thinkphp5模板篇之 模板循环标签
- thinkphp5 之数据操作和模板输出
- THINKPHP5 入门 -7 视图和模板
- Thinkphp5学习(25)视图和模板
- thinkphp5 引入前台、后台模板方法
- thinkphp5自定义 模板替换规则 如__PUBLIC__
- C# Graphics图像旋转与绘图总结
- Hive 1、什么是Hive,Hive有什么用
- npm常用命令
- 关于java中the jar file C:\program files\java\jar7\lib\rt.jar has no sourse attachment
- Java读取.properties文件
- ThinkPHP5 模板渲染
- Java学习笔记07
- 基于jquery.jsPlumb编写拓扑图
- Ubuntu1404+caffe+cuda8.0 gpu1080安装
- Hive 2、Hive 的安装配置(本地MySql模式)
- ADB shell 常见错误
- JAVA解析JSON
- 基于反射的Excel动态上传下载
- zookeeper-端口说明