Zend Framework页面缓存实例 |
|
一般使用工厂方式: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);
}
}
|