转自https://blog.csdn.net/qq_40624496/article/details/80791203
在config.php文件的模版配置里面添加一个cache_tpl的配置。
'template' => [
// 是否缓存编译好的模版
'cache_tpl' => false,
// 模板引擎类型 支持 php think 支持扩展
'type' => 'Think',
// 模板路径
'view_path' => '',
// 模板后缀
'view_suffix' => 'html',
// 模板文件名分隔符
'view_depr' => DS,
// 模板引擎普通标签开始标记
'tpl_begin' => '{',
// 模板引擎普通标签结束标记
'tpl_end' => '}',
// 标签库标签开始标记
'taglib_begin' => '{',
// 标签库标签结束标记
'taglib_end' => '}',
],
当然设置cache_tpl => false时系统不缓存编译好的模版文件,反之则缓存。
然后再修改thinkphp->library->think文件夹下的Template.php文件的fetch函数中的
if (!$this->checkCache($cacheFile)) {
// 缓存无效 重新模板编译
$content = file_get_contents($template);
$this->compiler($content, $cacheFile);
}
改为
if (!$this->checkCache($cacheFile) || !Config::get('template')['cache_tpl']) {
// 缓存无效 重新模板编译
$content = file_get_contents($template);
$this->compiler($content, $cacheFile);
}
至此系统缓不缓存模版就可以通过config.php文件控制了。