当前位置:Gxlcms > php框架 > Zend Framework页面缓存实例

Zend Framework页面缓存实例

时间:2021-07-01 10:21:17 帮助过:43人阅读

一般使用工厂方式:Zend_Cache::factory()的创建缓存对象。
 
Zend_Cache::factory方法有四个参数: 前端类型,后端类型,前端参数,后端参数。
 
以下为页面缓存实例:

  1. class Zend_Controller_Shawn extends Zend_Controller_Action
  2. {
  3. public static $cache;
  4. public function init()
  5. {
  6. $frontendOptions = array(
  7. 'lifetime' => 3600, // 缓存寿命
  8. 'debug_header' => true, // true是打开debug,通常设为false
  9. 'regexps' => array(
  10. '^/$' => array('cache' => true), // 所有页面都缓存
  11. '^/index/' => array('cache' => true), // 缓存index下所有action页
  12. '^/index/search' => array('cache' => false), // 对search action不缓存
  13. ),
  14. 'default_options' => array(
  15. 'cache_with_get_variables' => true,
  16. 'cache_with_post_variables' => true,
  17. 'make_id_with_cookie_variables' => true, // 注意如果开了session要把这个打开
  18. 'cache_with_session_variables' => true, // 注意如果开了session要把这个打开
  19. 'cache_with_files_variables' => true,
  20. 'cache_with_cookie_variables' => true, // 注意如果开了session要把这个打开
  21. )
  22. );
  23. $backendOptions = array('cache_dir' => 'C:/www/zend/cache/'); // 缓存存放路径,必须存在并可写
  24. self::$cache = Zend_Cache::factory('Page', 'File', $frontendOptions, $backendOptions);
  25. self::$cache->start(); // 开始缓存
  26. //如有需要,可以再其他页面进行缓存清理
  27. Zend_Controller_Shawn::$cache->clean(Zend_Cache::CLEANING_MODE_ALL);
  28. }
  29. }


 更多细节,可以参考 Zend 官方手册 http://framework.zend.com/manual/1.12/en/zend.cache.frontends.html
 

人气教程排行