首页 > 代码库 > thinkphp的静态缓存禁止

thinkphp的静态缓存禁止

  最近用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,   // 默认关闭静态缓存

    我用的第三种,个人认为缓存设置并不是经常要去修改,没必要采用第二中放到入口文件中,第一种我就直接否决了,呵呵。。你懂的。