thinkphp如何配置模版缓存,来显著提高页面加载速度

  1. 模板编译缓存(Template Compilation Cache)
    本质:将模板文件(如 .html)转换成 PHP 可执行代码并缓存起来。

执行流程:

c 复制代码
用户请求 → 解析模板文件 → 编译成PHP代码 → 执行PHP代码 → 生成最终HTML → 返回给用户
                                  ↓
                             编译缓存文件
                            (下次直接执行)

特点:

缓存的是编译后的PHP代码,而不是最终的HTML内容

保存在 runtime/temp 目录下(TP5.1默认位置)

每次请求仍然要执行PHP逻辑(数据库查询、业务计算等)

主要是为了避免重复解析模板语法(如 {$user.name}、{volist} 等)

修改了模板文件后,模板缓存会自动刷新,开发起来也方便

开启后会显著提高模版页面的响应速度,同时不影响页面数据的动态展示

tp5.0配置方法

application -> config.php ->template 数组添加一个属性 'tpl_cache' => true

php 复制代码
 'template'               => [
        // 开启模板编译缓存
        'tpl_cache' => true,

		// 模板引擎类型 支持 php think 支持扩展
        'type'         => 'Think',
        // 默认模板渲染规则 1 解析为小写+下划线 2 全部转换小写
        'auto_rule'    => 1,
        // 模板路径
        'view_path'    => '',
        // 模板后缀
        'view_suffix'  => 'html',
        // 模板文件名分隔符
        'view_depr'    => DS,
        // 模板引擎普通标签开始标记
        'tpl_begin'    => '{',
        // 模板引擎普通标签结束标记
        'tpl_end'      => '}',
        // 标签库标签开始标记
        'taglib_begin' => '{',
        // 标签库标签结束标记
        'taglib_end'   => '}',
    ],

tp5.1配置方法

application -> config ->template.php 数组添加一个属性 'tpl_cache' => true

php 复制代码
<?php
// +----------------------------------------------------------------------
// | 模板设置
// +----------------------------------------------------------------------

return [
	// 开启模板编译缓存
    'tpl_cache'    => true, // 设为 false 即可关闭缓存

    // 模板引擎类型 支持 php think 支持扩展
    'type'         => 'Think',
    // 视图路径
    'view_path'    => '',
    // 模板后缀
    'view_suffix'  => 'html',
    // 模板文件名分隔符
    'view_depr'    => DIRECTORY_SEPARATOR,
    // 模板引擎普通标签开始标记
    'tpl_begin'    => '{',
    // 模板引擎普通标签结束标记
    'tpl_end'      => '}',
    // 标签库标签开始标记
    'taglib_begin' => '{',
    // 标签库标签结束标记
    'taglib_end'   => '}',

    
];

免费在线工具网站 https://mantools.top

相关推荐
要开心吖ZSH6 小时前
本地缓存方案选择指南:volatile、ConcurrentHashMap、Caffeine 怎么选?
缓存·caffeine·volatile·本地缓存
范什么特西6 小时前
redis题目面渣重点
数据库·redis·缓存
Hello_Damon_Nikola6 小时前
AC7911从入门到精通
开发语言·嵌入式硬件·物联网·php
今天的砖头有点烫手啊6 小时前
接口太慢?Spring Boot 缓存体系 @Cacheable 全链路拆解
spring boot·后端·缓存
szephyr7 小时前
腾讯云 ADP 智能体的 Skills 版本回滚总是回到旧配置,是缓存没清还是版本管理没开?
java·缓存·腾讯云
sbjdhjd8 小时前
大三网安秋招核心学习前言(AI 安全 + Web 漏洞 + 内网渗透全考点)
人工智能·网络协议·学习·安全·网络安全·开源·php
运维行者_9 小时前
企业带宽监控工具实战:网络流量分析与异常排查的5个关键能力
运维·服务器·开发语言·网络·分布式·后端·php
吴声子夜歌10 小时前
正则指引——PHP
开发语言·正则表达式·php
Claire_8810 小时前
企业文件管理系统选型技术框架与主流产品对比分析
开发语言·php
COOLMO研究AI10 小时前
Python 如何给 AI API 实现断路器模式:防止雪崩与保护本地服务
人工智能·python·php