Класс CacheEngine
Двигатель хранения для кэширования CakePHP
Постоянные значения
-
stringCHECK_KEY'key'
-
stringCHECK_VALUE'value'
Краткое описание свойств
- $_config protected
arrayКонфигурация во время выполнения
- $_configInitialized protected
boolУказывает, была ли конфигурация свойства уже настроена со значениями по умолчанию
- $_defaultConfig protected
arrayКонфигурация кэша по умолчанию переопределяется в большинстве адаптеров кэша. Это ключи, общие для всех адаптеров. Если переопределяется, это свойство не используется.
- $_groupPrefix protected
stringСодержит скомпилированную строку со всеми префиксами групп, которые должны добавляться к каждому ключу в этом движке кэша
Краткое описание методов
-
_configDelete() protected
Удаляет отдельный ключ конфигурации.
-
_configRead() protected
Читает ключ конфигурации.
-
_configWrite() protected
Записывает ключ конфигурации.
-
_key() protected
Генерирует ключ для использования кэшем заднего плана.
-
add() public
Добавляет ключ в кэш, если он ещё не существует.
-
clear() abstract public
Удаляет все ключи из кэша
-
clearGroup() abstract public
Очищает все значения, относящиеся к группе. Зависит от реализации двигателя, будет ли фактически удалены ключи или просто смоделировано действие для достижения того же результата.
-
configShallow() public
Объединяет предоставленную конфигурацию с существующей конфигурацией. В отличие от
config(), которое выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение. -
decrement() abstract public
Уменьшает число по ключу и возвращает уменьшенное значение
-
delete() abstract public
Удаляет ключ из кэша
-
deleteMultiple() public
Удаляет несколько элементов кэша в одной операции.
-
duration() protected
Преобразует различные выражения значения TTL в продолжительность в секундах
-
ensureValidKey() protected
Обеспечивает корректность заданного ключа кэша.
-
ensureValidType() protected
Обеспечивает корректность типа аргумента и ключей кэша.
-
get() abstract public
Извлекает значение по заданному ключу из кэша.
-
getConfig() public
Возвращает конфигурацию.
-
getConfigOrFail() public
Возвращает конфигурацию для этого конкретного ключа.
-
getMultiple() public
Получает несколько элементов кэша по их уникальным ключам.
-
groups() public
Выполняет любую необходимую инициализацию для каждой группы и возвращает
group valueдля каждой из них, это маркер, представляющий каждую группу в ключе кэша -
has() public
Определяет, присутствует ли элемент в кэше.
-
increment() abstract public
Увеличивает число по ключу и возвращает увеличенное значение
-
init() public
Инициализирует движок кэша
-
set() abstract public
Сохраняет данные в кэше, уникально идентифицируемые заданным ключом с необязательным временем истечения TTL.
-
setConfig() public
Устанавливает конфигурацию.
-
setMultiple() public
Сохраняет набор пар «ключ => значение» в кэше с необязательным TTL.
-
warning() protected
Движки кэша могут выводить предупреждения, если при выполнении операций возникают ошибки, если параметр warnOnWriteFailures установлен в значение true.
Подробное описание методов
_configDelete() protected
_configDelete(string $key): void
Удаляет один ключ конфигурации.
Параметры
-
string$key Ключ для удаления.
Возвращаемое значение
voidИсключения
Cake\Core\Exception\CakeExceptionесли попытка перезаписать существующую конфигурацию
_configRead() protected
_configRead(string|null $key): mixed
Читает ключ конфигурации.
Параметры
-
string|null$key Ключ для чтения.
Возвращаемое значение
mixed_configWrite() protected
_configWrite(string|array $key, mixed $value, bool|string $merge = false): void
Записывает ключ конфигурации.
Параметры
-
string|array$key Ключ для записи.
-
mixed$value Значение для записи.
-
bool|string$merge optional True для рекурсивного слияния, 'shallow' для простого слияния, false для перезаписи, по умолчанию false.
Возвращаемое значение
voidИсключения
Cake\Core\Exception\CakeExceptionесли попытка перезаписать существующую конфигурацию
_key() protected
_key(string $key): string
Генерирует ключ для использования с кэшем.
Если переданный ключ корректный, к нему применяются префиксы группы и движка. Пробелы в ключах заменяются.
Параметры
-
string$key переданный ключ
Возвращаемое значение
stringИсключения
Cake\Cache\InvalidArgumentExceptionЕсли значение ключа некорректно.
add() public
add(string $key, mixed $value): bool
Добавляет ключ в кэш, если он ещё не существует.
По умолчанию используется неатомарная реализация. Подклассы должны отдавать предпочтение атомарным реализациям.
Параметры
-
string$key Идентификатор данных.
-
mixed$value Данные для кеширования.
Возвращаемое значение
boolclear() abstract public
clear(): bool
Удаляет все ключи из кэша
Возвращаемое значение
boolclearGroup() abstract public
clearGroup(string $group): bool
Очищает все значения, принадлежащие группе. Реализация должна решить, удалять ли ключи фактически или просто имитировать это для достижения того же результата.
Каждая реализация должна решить, удалять ли фактически ключи или просто увеличить значение генерации группы, чтобы достичь того же результата.
Параметры
-
string$group название группы для очистки
Возвращаемое значение
boolconfigShallow() public
configShallow(string|array $key, mixed|null $value = null): $this
Объединяет предоставленную конфигурацию с существующей. В отличие от config(), которое выполняет рекурсивное слияние для вложенных ключей, этот метод выполняет простое слияние.
Установление конкретного значения:
$this->configShallow('key', $value); Установление вложенного значения:
$this->configShallow('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->configShallow(['one' => 'value', 'another' => 'value']);
Параметры
-
string|array$key Ключ для установки или массив всей конфигурации.
-
mixed|null$value optional Значение для установки.
Возвращаемое значение
$thisdecrement() abstract public
decrement(string $key, int $offset = 1): int|false
Уменьшает число по ключу и возвращает уменьшенное значение
Параметры
-
string$key Идентификатор данных
-
int$offset optional На сколько уменьшить
Возвращаемое значение
int|falsedelete() abstract public
delete(string $key): bool
Удаляет ключ из кэша
Параметры
-
string$key Идентификатор данных
Возвращаемое значение
booldeleteMultiple() public
deleteMultiple(iterable $keys): bool
Удаляет несколько элементов кэша в одной операции.
Параметры
-
iterable$keys Список строк-ключей для удаления.
Возвращаемое значение
boolИсключения
Cake\Cache\InvalidArgumentExceptionЕсли $keys не массив и не Traversable, или любой из $keys не является допустимым значением.
duration() protected
duration(DateInterval|int|null $ttl): int
Преобразует различные выражения значения TTL в продолжительность в секундах
Параметры
-
DateInterval|int|null$ttl Значение TTL этого элемента. Если отправлено null, будет использоваться значение по умолчанию драйвера.
Возвращаемое значение
intensureValidKey() protected
ensureValidKey(string $key): void
Проверяет валидность переданного ключа кэша.
Параметры
-
string$key Ключ для проверки.
Возвращаемое значение
voidИсключения
Cake\Cache\InvalidArgumentExceptionПри невалидном ключе.
ensureValidType() protected
ensureValidType(iterable $iterable, string $check = self::CHECK_VALUE): void
Проверяет валидность типа аргумента и ключей кэша.
Параметры
-
iterable$iterable Проверяемый итерируемый объект.
-
string$check optional Проверять ключи или значения.
Возвращаемое значение
voidИсключения
Cake\Cache\InvalidArgumentExceptionget() abstract public
get(string $key, mixed $default = null): mixed
Возвращает значение для заданного ключа из кэша.
Параметры
-
string$key Уникальный ключ этого элемента в кэше.
-
mixed$default optional Значение по умолчанию, возвращаемое, если ключ не существует.
Возвращаемое значение
mixedИсключения
Cake\Cache\InvalidArgumentExceptionЕсли строка $key не является допустимым значением.
getConfig() public
getConfig(string|null $key = null, mixed $default = null): mixed
Возвращает конфигурацию.
Использование
Чтение всей конфигурации:
$this->getConfig();
Чтение определённого значения:
$this->getConfig('key'); Чтение вложенного значения:
$this->getConfig('some.nested.key'); Чтение со значением по умолчанию:
$this->getConfig('some-key', 'default-value'); Параметры
-
string|null$key optional Ключ для получения или null для всей конфигурации.
-
mixed$default optional Значение возвращаемое при отсутствии ключа.
Возвращаемое значение
mixedgetConfigOrFail() public
getConfigOrFail(string $key): mixed
Возвращает конфигурацию для заданного ключа.
Значение конфигурации для этого ключа должно существовать, оно никогда не может быть null.
Параметры
-
string$key Ключ для получения.
Возвращаемое значение
mixedИсключения
InvalidArgumentExceptiongetMultiple() public
getMultiple(iterable $keys, mixed $default = null): iterable
Получает несколько элементов кэша по их уникальным ключам.
Параметры
-
iterable$keys Список ключей, которые могут быть получены в одной операции.
-
mixed$default optional Значение по умолчанию для ключей, которых нет.
Возвращает
iterableВыбрасывает
Cake\Cache\InvalidArgumentExceptionЕсли $keys не массив и не Traversable, или если какой-либо из $keys не является допустимым значением.
groups() public
groups(): string[]
Выполняет необходимую инициализацию для каждой группы и возвращает group value для каждой из них, это маркер, представляющий каждую группу в ключе кэша.
Возвращает
string[]has() public
has(string $key): bool
Определяет, присутствует ли элемент в кэше.
ПРИМЕЧАНИЕ: Рекомендуется использовать has() только для целей подготовки кэша и не использовать его в операциях получения/установки в ваших активных приложениях, так как этот метод подвержен гонке, где has() вернёт true, а сразу после этого другой скрипт может удалить его, что сделает состояние вашего приложения устаревшим.
Параметры
-
string$key Ключ элемента кэша.
Возвращает
boolВыбрасывает
Cake\Cache\InvalidArgumentExceptionЕсли строка $key не является допустимым значением.
increment() abstract public
increment(string $key, int $offset = 1): int|false
Увеличивает число по ключу и возвращает увеличенное значение.
Параметры
-
string$key Идентификатор данных.
-
int$offset optional На сколько увеличить.
Возвращает
int|falseinit() public
init(array $config = []): bool
Инициализирует движок кэша.
Вызывается автоматически фронтендом кэша. Объединяет конфигурацию выполнения с значениями по умолчанию перед использованием.
Параметры
-
array$config optional Ассоциативный массив параметров для движка.
Возвращает
boolset() abstract public
set(string $key, mixed $value, null|intDateInterval $ttl = null): bool
Сохраняет данные в кэше, уникально ссылающиеся на заданный ключ с необязательным временем жизни (TTL).
Параметры
-
string$key Ключ хранимого элемента.
-
mixed$value Значение хранимого элемента, должно быть сериализуемым.
-
null|intDateInterval$ttl optional Необязательно. Значение TTL для этого элемента. Если не передано значение, и драйвер поддерживает TTL, библиотека может установить значение по умолчанию или доверить это драйверу.
Возвращает
boolВыбрасывает
Cake\Cache\InvalidArgumentExceptionsetConfig() public
setConfig(string|array $key, mixed|null $value = null, bool $merge = true): $this
Устанавливает конфигурацию.
Использование
Установка определённого значения:
$this->setConfig('key', $value); Установка вложенного значения:
$this->setConfig('some.nested.key', $value); Обновление нескольких параметров конфигурации одновременно:
$this->setConfig(['one' => 'value', 'another' => 'value']);
Параметры
-
string|array$key Ключ для установки, или полный массив конфигураций.
-
mixed|null$value optional Значение для установки.
-
bool$merge optional Рекурсивно сливать или перезаписывать существующую конфигурацию, по умолчанию true.
Возвращает
$thisВыбрасывает
Cake\Core\Exception\CakeExceptionПри попытке установить недопустимый ключ.
setMultiple() public
setMultiple(iterable $values, null|intDateInterval $ttl = null): bool
Сохраняет набор пар ключ => значение в кэше с необязательным TTL.
Параметры
-
iterable$values Список пар ключ => значение для операции множественного сохранения.
-
null|intDateInterval$ttl optional Необязательно. Значение TTL для этого элемента. Если не передано значение, и драйвер поддерживает TTL, библиотека может установить значение по умолчанию или доверить это драйверу.
Возвращает
boolВыбрасывает
Cake\Cache\InvalidArgumentExceptionЕсли $values не массив и не Traversable, или если какие-либо из $values не являются допустимыми значениями.
warning() protected
warning(string $message): void
Движки кэша могут генерировать предупреждения, если они сталкиваются с ошибками во время операции, если параметр warnOnWriteFailures установлен в true.
Параметры
-
string$message Сообщение предупреждения.
Возвращает
voidПодробное описание свойств
$_config protected
Конфигурация выполнения
Тип
array$_configInitialized protected
Указывает, была ли конфигурация свойства уже настроена со значениями по умолчанию.
Тип
bool$_defaultConfig protected
Конфигурация кэша по умолчанию перезаписывается в большинстве адаптеров кэша. Это ключи, общие для всех адаптеров. Если перезаписано, это свойство не используется.
-
durationУказывает, как долго элементы в этой конфигурации кэша сохраняются. -
groupsСписок групп или «метки», связанных с каждым ключом, хранящимся в этой конфигурации. Удобно для удаления всей группы из кэша. -
prefixПрефикс, добавляемый ко всем записям. Хорошо подходит для случаев, когда вам нужно использовать пространство имён ключей с другой конфигурацией кэша или другим приложением. -
warnOnWriteFailuresНекоторые движки, такие как ApcuEngine, могут генерировать предупреждения об ошибках при записи.
Тип
array$_groupPrefix protected
Содержит скомпилированную строку со всеми префиксами групп, которые необходимо добавить перед каждым ключом в этом движке кэша.
Тип
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.2/class-Cake.Cache.CacheEngine.html