程序员开发实例大全宝库

网站首页 > 编程文章 正文

「ThinkPHP5开发连载二十」视图-模板引擎

zazugpt 2024-10-10 14:38:39 编程文章 16 ℃ 0 评论

上一篇文章讲解“视图-过滤”,本篇文章讲解“视图-模板引擎”。


内置模板引擎

视图的模板文件可以支持不同的解析规则,默认情况下无需手动初始化模板引擎。

可以通过下面的几种方式对模板引擎进行初始化。

1. 配置文件

ThinkPHP5.0版本与ThinkPHP5.1版本的目录结构有所变动,因此两个版本的模板设置配置项位置不同

①ThinkPHP5.0版本模板引擎的参数在配置项文件(config.php)中。

②ThinkPHP5.1版本内置模板引擎的参数统一在配置目录的template.php文件中配置。

2. 视图根目录

注:以下以ThinkPHP5.1版本作为示例

1)视图文件的根目录默认情况下位于模块的view目录,每个模块的视图目录可以通过模板参数view_path自定义。

①将模板位置设置到根目录下的viewport文件夹下,在config/template.php文件中进行设置。

②创建Index控制器,并新建index方法

③在根目录的viewport/index/下新建index.html模板

预览:

2)可以用view_base模板引擎参数定义全局的视图根目录,然后模块作为子目录。

①在config/template.php文件中定义view_base

访问Index控制器的index方法,预览:

提示模板文件不存在,并指出模板路径“../template/index/index/index.html”。

②在“../template/index/index/”下创建index.html模板

访问Index控制器index方法,预览:

注意:

1. view_base与view_path的区别:

①view_base的优先级高于view_path

②view_base定义全局视图根目录,模块为子目录,例设置view_base值为“../template/”,模板路径为“../template/index/index/index.tml”,意义为:全局根目录template下的index模块的index控制器的index.html模板。

③view_path定义模块下的视图目录,例设置view_path值为“../viewport/”,模板路径为:“../viewport/index/index.html”,意义为视图目录viewport下的index控制器的index.html模板。当访问其他模块index控制器的index.html模板时,访问的是同一个,都是“../viewport/index/index.html”。

3. 调用engine方法初始化

视图类也提供了engine方法对模板解析引擎进行初始化或者切换不同的模板引擎。

①在Index控制器中,新建vEngine方法

访问预览:

注意:

1. 表示当前视图的模板文件使用原生php进行解析。

②在view/index/下新建index.php文件

预览:


使用第三方模板引擎

官方扩展库中提供了一个类似于angularjs语法的模板引擎think-angular,具体可以参考参考手册:

另外还包括了一个twig模板引擎扩展:

ThinkPHP5连载为卓象程序员原创,转载请联系卓象程序员

关注卓象程序员,定期发布技术文章

下一篇讲解“数据库”

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表