Класс QueryCacher
Обрабатывает кеширование запросов и загрузку результатов из кеша.
Используется в {@link \Cake\Datasource\QueryTrait} внутри.
См.: \Cake\Datasource\QueryTrait::cache() для публичного интерфейса.
Краткое описание свойств
Краткое описание методов
-
__construct() public
Конструктор.
-
_resolveCacher() protected
Получить движок кеширования.
-
_resolveKey() protected
Получить/сгенерировать ключ кеширования.
-
fetch() public
Загрузить результаты из кеша или выполнить запрос.
-
store() public
Сохранить набор результатов в кеш.
Подробное описание методов
__construct() public
__construct(Closure|string $key, Psr\SimpleCache\CacheInterface|string $config)
Конструктор.
Параметры
-
Closure|string$key Ключ или функция для генерации ключа.
-
Psr\SimpleCache\CacheInterface|string$config Имя конфигурации кеша или экземпляр движка кеширования.
Исключения
RuntimeException_resolveCacher() protected
_resolveCacher(): Psr\SimpleCache\CacheInterface
Получить движок кеширования.
Возвращает
Psr\SimpleCache\CacheInterface_resolveKey() protected
_resolveKey(object $query): string
Получить/сгенерировать ключ кеширования.
Параметры
-
object$query Запрос для генерации ключа.
Возвращает
stringИсключения
RuntimeExceptionfetch() public
fetch(object $query): mixed|null
Загрузить результаты из кеша или выполнить запрос.
Параметры
-
object$query Запрос, для которого выполняется чтение из кеша.
Возвращает
mixed|nullstore() public
store(object $query, Traversable $results): bool
Сохранить набор результатов в кеш.
Параметры
-
object$query Запрос, для которого выполняется запись в кеш.
-
Traversable$results Набор результатов для сохранения.
Возвращает
boolПодробное описание свойств
$_config protected
Настройка движка кеширования.
Тип
Psr\SimpleCache\CacheInterface|string$_key protected
Ключ или функция для генерации ключа.
Тип
Closure|string
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Datasource.QueryCacher.html