模板缓存
StartMVC的模板引擎支持缓存功能,提高性能:
配置缓存时间
在配置文件中设置缓存时间(秒):
// config/common.php
return [
// 其他配置...
'tpl_cache_time' => 3600, // 模板缓存1小时
];
手动清除缓存
在控制器中清除缓存:
// 清除指定模板缓存
$this->view->clearCache('index_index');
// 清除所有模板缓存
$this->view->clearCache();
缓存工作原理
- 首次访问时,模板被编译并缓存
- 之后的访问,如果缓存未过期且模板未修改,直接使用缓存
- 如果缓存过期或模板被修改,重新编译模板
缓存文件存储在TEMP_PATH/MODULE/
目录下,包含编译时间戳注释。
扩展模板引擎
StartMVC支持通过钩子扩展模板引擎功能:
class MyView extends \startmvc\core\view {
// 编译前处理
protected function beforeCompile($content) {
// 自定义模板处理逻辑
return $content;
}
// 编译后处理
protected function afterCompile($content) {
// 添加额外的处理
return $content;
}
}
在需要使用扩展模板引擎的地方:
// 控制器中
$this->view = new \app\common\MyView();
总结
StartMVC的视图系统提供了轻量、简洁且灵活的模板功能,同时保持了高性能。通过简单的模板标签,可以快速构建网站前端,同时不牺牲PHP的灵活性和强大功能。
无论是简单的博客还是复杂的企业应用,StartMVC的视图系统都能满足您的需求。