ThinkPHP3.2完全开发手册

ThinkPHP系列开发手册在线版

模板定义

每个模块的模板文件是独立的,为了对模板文件更加有效的管理,ThinkPHP对模板文件进行目录划分,默认的模板文件定义规则是:

视图目录/[模板主题/]控制器名/操作名+模板后缀

默认的视图目录是模块的View目录(模块可以有多个视图文件目录,这取决于你的应用需要),框架的默认视图文件后缀是.html。 新版模板主题默认是空(表示不启用模板主题功能)。

在每个模板主题下面,是以模块下面的控制器名为目录,然后是每个控制器的具体操作模板文件,例如:

User控制器的add操作 对应的模板文件就应该是:./Application/Home/View/User/add.html

如果你的默认视图层不是View,例如:

'DEFAULT_V_LAYER'       =>  'Template', // 设置默认的视图层名称

那么,对应的模板文件就变成了:./Application/Home/Template/User/add.html

模板文件的默认后缀的情况是.html,也可以通过 TMPL_TEMPLATE_SUFFIX 来配置成其他的。例如,我们可以配置:

'TMPL_TEMPLATE_SUFFIX'=>'.tpl'

定义后,User控制器的add操作 对应的模板文件就变成是: ./Application/Home/View/User/add.tpl

如果觉得目录结构太深,可以通过设置 TMPL_FILE_DEPR 参数来配置简化模板的目录层次,例如设置:

'TMPL_FILE_DEPR'=>'_'

默认的模板文件就变成了:./Application/Home/View/User_add.html

3.2.3版本以上,支持把模板目录设置到模块目录之外,有两种方式:

一、改变所有模块的模板文件目录

可以通过设置TMPL_PATH常量来改变所有模块的模板目录所在,例如:

define('TMPL_PATH','./Template/');

原来的./Application/Home/View/User/add.html变成了./Template/Home/User/add.html

二、改变某个模块的模板文件目录

我们可以在模块配置文件中设置VIEW_PATH参数单独定义某个模块的视图目录,例如:

'VIEW_PATH'=>'./Theme/'

把当前模块的视图目录指定到最外层的Theme目录下面,而不是放到当前模块的View目录下面。 原来的./Application/Home/View/User/add.html变成了./Theme/User/add.html

如果同时定义了TMPL_PATH常量和VIEW_PATH设置参数,那么以当前模块的VIEW_PATH参数设置优先。