最近用Thinkphp做的企业站,thinkphp里面内置了一个静态缓存功能各种厉害缓存,挥之不去。既然现在还用不上静态缓存功能,就想想怎么禁止缓存。为了这缓存,把它的核心库都看了一些。网上有很多讲解缓存机制的原理和用法,就是没有讲怎么禁止的。这记录分享下,有用时以便查阅。
ThinkPHP在数据缓存方面包括文件方式、共享内存方式和数据库方式在内的多种方式进行缓存,通过插件方式还可以增加以后需要的缓存类,让应用开发可以选择更加适合自己的缓存方式,从而有效地提高应用执行效率。目前已经支持的缓存方式包括:File、Db、Apc、Memcache、Shmop、Sqlite、Xcache、Apachenote和Eaccelerator
为了开发的方便,可以先把缓存给去除。
有下面几种方法可参考:
(1)在配置文件config.php我们只要在文件中加入以下两句:
‘TMPL_CACHE_ON‘ => false,//禁止模板编译缓存
‘HTML_CACHE_ON‘ => false,//禁止静态缓存
(这个个人觉得比较麻烦,还得在每个模块配置里面加。)
(2)在入口文件里面关闭全部缓存:
define(‘APP_DEBUG‘,TRUE); // 开启调试模式
define(‘DB_FIELD_CACHE‘,false); //禁止模板编译缓存
define(‘HTML_CACHE_ON‘,false); //禁止静态缓存
(3)在默认配置里面修改。进去框架目录ThinkPHP\Conf可以发现convention.php和debug.php。
debug.php中
‘TMPL_CACHE_ON‘=>false, // 默认开启模板缓存
convention.php中
TMPL_CACHE_ON‘ => false, // 默认开启模板编译缓存 false 的话每次都重新编译模板
‘ACTION_CACHE_ON‘ => false, // 默认关闭ACTION缓存
‘HTML_CACHE_ON‘ => false, // 默认关闭静态缓存
我用的第三种,个人认为缓存设置并不是经常要去修改,没必要采用第二中放到入口文件中,第一种我就直接否决了,呵呵。。你懂的。
thinkphp的静态缓存禁止,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/xiamibk/p/3786441.html