ThinkPHP 6.0 默认使用 think-template 模板引擎,需在 config/view.php 中严格配置 'type' => 'Think',并确保 topthink/think-view 已安装;标签定界符、路径规则及标签库注册须按规范设置,否则无法解析。

ThinkPHP 6.0 默认使用 think-template 模板引擎,其标签语法(如 {\$name}、{volist}、{include})由引擎自动识别和编译。要正确配置和使用这些标签,关键在于确保引擎启用、路径规范、定界符一致,并理解标签生效前提。
确认模板引擎类型为 Think
在 config/view.php 中必须明确指定引擎类型:
-
'type' => 'Think'—— 不可写成'think'或'THINK',大小写敏感 - 若使用
php原生引擎(不推荐常规开发),需改为此值并禁用所有 think-template 标签 - 未安装
topthink/think-view扩展时会报错Driver [Think] not supported,请先执行:composer require topthink/think-view
设置模板标签起始与结束符号
默认使用 { 和 } 作为普通标签和标签库的定界符,如需修改(例如避免与 CSS/JS 冲突),在 view.php 中配置:
-
'tpl_begin' => '{'和'tpl_end' => '}':控制{$name}、{if $a}等基础标签 -
'taglib_begin' => '{'和'taglib_end' => '}':控制{volist name="list"}等标签库指令 - 若改为
和},所有模板中就要写成、,否则无法解析
确保模板路径与命名规则匹配标签查找逻辑
think-template 的标签(尤其是 {include}、{load})依赖严格的路径解析规则:
-
{include file="public/header" /}会按view_path+view_dir_name查找public/header.html - 默认
view_dir_name是'view',若改为'template',则file="public/header"实际指向template/public/header.html - 路径分隔符
view_depr默认为DIRECTORY_SEPARATOR(Windows 是\,Linux 是/),建议显式设为'/'提高跨平台兼容性
启用标签库与自定义标签支持
内置标签(volist、foreach、if 等)默认可用;如需扩展或自定义标签:
- 在
view.php中注册标签库:'taglib' => ['my' => \app\common\taglib\MyTagLib::class] - 自定义标签类需继承
\think\template\TagLib,并在$tags属性中声明标签名、属性及闭合方式 - 模板中使用时前缀需与注册键一致,例如注册
'my',则写{my:goods_list category="2"/}
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











