thinkphp 3.2 彻底禁用 file 缓存需三步:一、配置 'data_cache_type' => 'null' 并设 'data_cache_time' => 0;二、关闭模板编译缓存,即 'tmpl_cache_on' => false;三、关闭静态缓存 'html_cache_on' => false,再清理 runtime 下所有缓存目录。

ThinkPHP 3.2 默认使用 File 类型缓存,会在 Runtime/Temp/ 目录下生成大量 .php 文件。关闭它不是“删掉缓存文件”这么简单,而是要从配置和机制两层入手——既要停用文件驱动,也要防止模板、编译、静态等关联缓存继续写入文件。
彻底禁用 File 缓存驱动
在项目配置文件 Conf/config.php 中,明确指定不使用 File 作为数据缓存类型,并设为无效或空驱动:
- 将
'DATA_CACHE_TYPE' => 'File'改为'DATA_CACHE_TYPE' => 'Null'(TP3.2 原生支持 Null 驱动,不执行任何存储) - 或直接注释/删除该配置项,框架会 fallback 到默认
File,所以必须显式覆盖 - 同时建议设置
'DATA_CACHE_TIME' => 0,避免缓存时间干扰判断
关闭模板编译缓存(关键!否则仍会写 .php 文件)
即使禁用了数据缓存,Think 模板引擎默认仍会把编译后的 PHP 代码写入 Runtime/Cache/。必须关闭:
-
'TMPL_CACHE_ON' => false—— 关闭模板编译缓存开关 -
'TMPL_CACHE_TIME' => 0—— 即使开启也设为立即失效(双重保险)
停用静态缓存与 HTML 缓存
静态缓存(HTML_CACHE_ON)也会生成 .html 文件到指定目录,需一并关闭:
'HTML_CACHE_ON' => false- 可选:删除或注释
'HTML_PATH'、'HTML_CACHE_RULES'等相关配置
清理残留并验证是否生效
改完配置后需手动清理已有缓存文件,并确认不再生成:
- 删除
Runtime/Temp/、Runtime/Cache/、Runtime/Html/全部内容 - 访问页面,检查上述目录是否保持为空(尤其
Temp/下不再出现新 .php 文件) - 在控制器中调用
S('test', 'value')后,检查Temp/是否无对应 md5 命名的 .php 文件
只要 Null 驱动生效 + 模板编译关闭 + 静态缓存关闭,File 类型缓存就真正停用了。不复杂但容易忽略模板层的缓存行为。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











