一般使用工廠方式:Zend_Cache::factory()的創建緩存對象。
Zend_Cache::factory方法有四個參數: 前端類型,後端類型,前端參數,後端參數。
以下為頁面緩存實例:
class Zend_Controller_Shawn extends Zend_Controller_Action
{
public static $cache;
public function init()
{
$frontendOptions = array(
'lifetime' => 3600, // 緩存壽命
'debug_header' => true, // true是打開debug,通常設為false
'regexps' => array(
'^/$' => array('cache' => true), // 所有頁面都緩存
'^/index/' => array('cache' => true), // 緩存index下所有action頁
'^/index/search' => array('cache' => false), // 對search action不緩存
),
'default_options' => array(
'cache_with_get_variables' => true,
'cache_with_post_variables' => true,
'make_id_with_cookie_variables' => true, // 注意如果開了session要把這個打開
'cache_with_session_variables' => true, // 注意如果開了session要把這個打開
'cache_with_files_variables' => true,
'cache_with_cookie_variables' => true, // 注意如果開了session要把這個打開
)
);
$backendOptions = array('cache_dir' => 'C:/www/zend/cache/'); // 緩存存放路徑,必須存在並可寫
self::$cache = Zend_Cache::factory('Page', 'File', $frontendOptions, $backendOptions);
self::$cache->start(); // 開始緩存
//如有需要,可以再其他頁面進行緩存清理
Zend_Controller_Shawn::$cache->clean(Zend_Cache::CLEANING_MODE_ALL);
}
}
更多細節,可以參考 Zend 官方手冊 http://framework.zend.com/manual/1.12/en/zend.cache.frontends.html