A-A+

Zend Framework页面缓存实例

2021年03月02日 我爱编程 暂无评论

这篇文章主要介绍了Zend Framework页面缓存实例,使用Zend缓存对象Zend_Cache实现,需要的朋友可以参考下。

一般使用工厂方式: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. }

给我留言

Copyright © 四季博客 保留所有权利.   Theme  Ality

用户登录