Я использую Zend Framework и Zend_Paginator с Doctrine 2 и DoctrineExtensions Paginate Adapter.
Мне нужно кэшировать мой результат, однако я не знаю, где мне это сделать.
Мне кажется логичным делать это в Репозитории, но я пробовал, и с адаптером пагинатора не получается.
Как бы вы пошли?
1 ответ
Ознакомьтесь с 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
не является кешированной переменной.
Похожие вопросы
Новые вопросы
zend-framework
Zend Framework - это объектно-ориентированная среда веб-приложений с открытым исходным кодом, реализованная в PHP 7.1 и лицензированная по новой лицензии BSD. Zend Framework был заархивирован 1 января 2020 года одновременно с миграцией и запуском Laminas Project, официального продолжения под управлением The Linux Foundation.