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
キャッシュ変数ではありません。