Zend Framework页面缓存实例
一般使用工厂方式:Zend_Cache::factory()的创建缓存对象。
Zend_Cache::factory方法有四个参数:前端类型,后端类型,前端参数,后端参数。
以下为页面缓存实例:
classZend_Controller_ShawnextendsZend_Controller_Action { publicstatic$cache; publicfunctioninit() { $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),//对searchaction不缓存 ), '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