Класс QueryCacher
Обрабатывает кэширование запросов и загрузку результатов из кэша.
Используется внутри Cake\Datasource\QueryTrait.
См.: \Cake\Datasource\QueryTrait::cache() для публичного интерфейса.
Краткое описание свойств
Краткое описание методов
-
__construct() публичное
Конструктор.
-
_resolveCacher() защищённое
Получение движка кэша.
-
_resolveKey() защищённое
Получение/генерация ключа кэша.
-
fetch() публичное
Загрузка кэшированных результатов из кэша или выполнение запроса.
-
store() публичное
Сохранение набора результатов в кэше.
Подробное описание методов
__construct() публичное
__construct(stringClosure $key, stringPsr\SimpleCache\CacheInterface $config)
Конструктор.
Параметры
-
stringClosure$key Ключ или функция для генерации ключа.
-
stringPsr\SimpleCache\CacheInterface$config Имя конфигурации кэша или экземпляр движка кэша.
Исключения
RuntimeException_resolveCacher() защищённое
_resolveCacher(): Psr\SimpleCache\CacheInterface
Получение движка кэша.
Возвращаемое значение
Psr\SimpleCache\CacheInterface_resolveKey() защищённое
_resolveKey(object $query): string
Получение/генерация ключа кэша.
Параметры
-
object$query Запрос для генерации ключа.
Возвращаемое значение
stringИсключения
RuntimeExceptionfetch() публичное
fetch(object $query): mixed|null
Загрузка кэшированных результатов из кэша или выполнение запроса.
Параметры
-
object$query Запрос, для которого производится чтение из кэша.
Возвращаемое значение
mixed|nullstore() публичное
store(object $query, Traversable $results): bool
Сохранение набора результатов в кэше.
Параметры
-
object$query Запрос, для которого производится запись в кэш.
-
Traversable$results Набор результатов для сохранения.
Возвращаемое значение
boolПодробное описание свойств
$_config защищённое
Конфигурация движка кэша.
Тип
stringPsr\SimpleCache\CacheInterface$_key защищённое
Ключ или функция для генерации ключа.
Тип
stringClosure
© 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.2/class-Cake.Datasource.QueryCacher.html