我将 Zend Framework 和 Zend_Paginator 与 Doctrine 2 和 DoctrineExtensions Paginate Adapter 一起使用。
我需要缓存我的结果,但是,我不知道我应该在哪里执行此操作。
在存储库中执行此操作对我来说似乎是合乎逻辑的,但我尝试过,但它不适用于分页器适配器。
你会怎么走?
我将 Zend Framework 和 Zend_Paginator 与 Doctrine 2 和 DoctrineExtensions Paginate Adapter 一起使用。
我需要缓存我的结果,但是,我不知道我应该在哪里执行此操作。
在存储库中执行此操作对我来说似乎是合乎逻辑的,但我尝试过,但它不适用于分页器适配器。
你会怎么走?
退房Zend_Cache
。有一些不同的适配器,包括文件、数据库和 memcached - 但处理它的一般方式是这样的:
$frontendOptions = array(
'lifetime' => 7200, // cache lifetime of 2 hours
'automatic_serialization' => true
);
$backendOptions = array(
'cache_dir' => './tmp/' // Directory where to put the cache files
);
// getting a Zend_Cache_Core object
$cache = Zend_Cache::factory('Core',
'File',
$frontendOptions,
$backendOptions);
if( ($result = $cache->load('myresult')) === false ) {
// fetch $result
$cache->save($result, 'myresult');
}
$result
不是缓存的变量。