标题: 关于ZF中Zend_Cache_Frontend_Page的问题
percila
新手上路
Rank: 1



UID 2386
精华 0
积分 0
帖子 1
翻译 0
原创 0
阅读权限 10
注册 2008-10-30
状态 离线
发表于 2008-10-30 01:48  资料  短消息  加为好友 
关于ZF中Zend_Cache_Frontend_Page的问题

初来乍到,有看不明白的就问了,呵呵,麻烦大家了....................................
再学ZF过程中遇到了Zend_Cache_Frontend_Page,觉得比较好用。。。但是有点复杂。。。
比如我再INDEX的controller中这么写
class IndexController extends Aki_Controller_Action
{      
    public function init()
    {
        self::_init();

        require_once 'Zend/Cache.php';
        $frontendOptions = array('lifetime' => 7200,'make_id_with_post_variables' => true

);
        $backendOptions = array('cache_dir' => '/cache');
        // obtenir un objet Zend_Cache_Frontend_Page
        $cache = Zend_Cache::factory('Page', 'File', $frontendOptions, $backendOptions);
        $cache->start();
    }}

俺的问题一:那么这样是否应当会CACHE这个CONTROLLER下面所有的VIEW呢?(或者应当说是会CACHE这个CONTROLLER下面所有ACTION完毕后所产生的结果页....?)

俺的问题二:如果真是这样的话,那么我要CACHE所有CONTROLLER的结果页面岂非要再每一个CONTROLLER中都写这么多代码?有没有比较简单的办法呢,比如我可以在根下的那个index.php中直接写入类似以下的代码(套用手册中的代码下)
$frontendOptions = array(   'lifetime' => null,   
                                                        'regexps' => array(
                                                                                               '^/$' => array('cache' => true),/*缓冲整个IndexController,其实就是一斜杠 */
                                                                                             '^/index/' => array('cache' => true),/*手册上这句写的也是将IndexController这个缓冲。。。俺的问题三:我不知道这么说是否正确呢?缓冲的应当是这个CONTROLLER的结果页面吧,对于函数类数据查询什么的应当是没有缓冲的吧?这局和上面那句有什么区别呢*/
                                                                                                '^/article/view/' => array(
                                                                                                                       'cache' => true,
                                                                                                                       'cache_with_post_variables' => true,/*问题四:这个我真不知道怎么理解了。。。是我看晕了书么?为什么连POST过来的数据也CACHE呢?有什么用呢*/
                                                                                           'make_id_with_post_variables' =>true  /*问题五:俺承认,俺英文真的很垃圾。。。这个的意思难道是用POST过来的数据的某个特点生成CACHE中的用来存贮/提取用的唯一ID?*/
                                                                                                     )
                                                    )
                                                )
$backendOptions = array(    'cache_dir' => '/tmp/');
$cache = Zend_Cache::factory('Page',                             'File',                              $frontendOptions,                             $backendOptions);
$cache->start();
补充个问题。。。最后start的时候。。。真的不用指定一个标示么。。。
以上六个小问题。。。麻烦大家了。。。谢谢

顶部
 


PHPEye开源社区


当前时区 GMT+8, 现在时间是 2009-1-10 05:08

    Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
Processed in 0.451065 second(s), 6 queries , Gzip enabled

清除 Cookies - 联系我们 - PHPEye开源社区 - Archiver