0

我只是尝试在我的应用程序中使用 Zend_Cache,它起作用了。现在的问题是我不确定在我的代码中将 Zend_Cache clean() 方法放在哪里。这是我的代码:

// application/Bootstrap.php
protected function _initCache()
{

    $dir = "./cache";

    $frontendOptions = array(
            'lifetime' => 10,
            'content_type_memorization' => true,
            'default_options'           => array(
                    'cache' => true,
                    'cache_with_get_variables' => true,
                    'cache_with_post_variables' => true,
                    'cache_with_session_variables' => true,
                    'cache_with_cookie_variables' => true,
            ),
            'regexps' => array(
                    // cache the whole IndexController
                    '^/.*' => array('cache' => true),
                    '^/index/' => array('cache' => true),
                    // place more controller links here to cache them
            )
    );

    $backendOptions = array(
            'cache_dir' =>$dir
    );

    // getting a Zend_Cache_Frontend_Page object
    $cache = Zend_Cache::factory('Page',
            'File',
            $frontendOptions,
            $backendOptions);
    $cache->start();
}

我应该把它放在哪里$cache->clean(/* something */);

4

1 回答 1

0

由于您已将我们的 $frontend 数组配置为缓存数据 10 秒,因此缓存的数据将在 10 秒后自动删除。

我建议你可以增加你的时间

one hour : 3600 or 2 hours like 7200

但是,如果稍后在您的应用程序中您想手动清理整个缓存数据,只需编写

$cache->clean();

这将清除整个缓存数据。但是,如果要删除正在缓存的特定数据,请写入

$cache->remove('mydata');

有关缓存的更多使用,请参见链接

我与上述链接无关,仅供您了解

希望这对你有帮助。

于 2013-09-20T06:38:29.043 回答