每个模块的模板文件是独立的,为了对模板文件更加有效的管理,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` 支持把模板目录设置到模块目录之外,有两种方式: **一、改变所有模块的模板文件目录** 可以通过设置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参数设置优先。