Spec-Zone.ru › CakePHP 4.3

Класс CacheEngine

Двигатель кэширования для CakePHP

Абстрактный
Пространство имен: Cake\Cache

Константы

  • string
    CHECK_KEY
    'key'
  • string
    CHECK_VALUE
    'value'

Краткое описание свойств

  • $_config защищенное
    array<string, mixed>

    Конфигурация во время выполнения

  • $_configInitialized защищенное
    bool

    Указывает, была ли конфигурация свойств уже настроена по умолчанию

  • $_defaultConfig защищенное
    array<string, mixed>

    Конфигурация кеша по умолчанию переопределяется в большинстве адаптеров кеша. Это ключи, общие для всех адаптеров. Если переопределено, это свойство не используется.

  • $_groupPrefix защищенное
    string

    Содержит скомпилированную строку со всеми префиксами групп, которые должны быть добавлены к каждому ключу в этом движке кэширования

Краткое описание методов

  • _configDelete() защищенное

    Удаляет один ключ конфигурации.

  • _configRead() защищенное

    Читает ключ конфигурации.

  • _configWrite() защищенное

    Записывает ключ конфигурации.

  • _key() защищенное

    Генерирует ключ для использования кэшем backend.

  • add() публичное

    Добавляет ключ в кэш, если он еще не существует.

  • clear() абстрактный публичное

    Удаляет все ключи из кэша

  • clearGroup() абстрактный публичное

    Очищает все значения, принадлежащие группе. Реализующему движку предоставляется свобода выбора: удалить ключи или только смоделировать удаление для достижения аналогичного результата.

  • configShallow() публичное

    Объединяет предоставленную конфигурацию с существующей конфигурацией. В отличие от config(), которая выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.

  • decrement() абстрактный публичное

    Уменьшает число по ключу и возвращает уменьшенное значение

  • delete() абстрактный публичное

    Удаляет ключ из кэша

  • deleteMultiple() публичное

    Удаляет несколько элементов кэша как список

  • duration() защищенное

    Преобразует различные выражения значения TTL в продолжительность в секундах

  • ensureValidKey() защищенное

    Обеспечивает валидность заданного ключа кэша.

  • ensureValidType() защищенное

    Обеспечивает валидность типа аргумента и ключей кэша.

  • get() абстрактный публичное

    Извлекает значение для заданного ключа из кэша.

  • getConfig() публичное

    Возвращает конфигурацию.

  • getConfigOrFail() публичное

    Возвращает конфигурацию для этого конкретного ключа.

  • getMultiple() публичное

    Получает несколько элементов кэша по их уникальным ключам.

  • groups() публичное

    Выполняет необходимые операции инициализации для каждой группы и возвращает group value для каждой из них; это маркер, представляющий каждую группу в ключе кэша.

  • has() публичное

    Определяет, присутствует ли элемент в кэше.

  • increment() абстрактный публичное

    Увеличивает число по ключу и возвращает увеличенное значение

  • init() публичное

    Инициализирует движок кэширования

  • set() абстрактный публичное

    Сохраняет данные в кэше, однозначно ссылающиеся на указанный ключ с необязательным временем жизни истечения срока действия.

  • setConfig() публичное

    Устанавливает конфигурацию.

  • setMultiple() публичное

    Сохраняет набор пар ключ => значение в кэше с необязательным TTL.

  • warning() защищенное

    Двигатели кэширования могут вызывать предупреждения, если при работе возникают ошибки, если параметр 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(array<string, mixed>|string $key, mixed $value, string|bool $merge = false): void

Записывает ключ конфигурации.

Параметры

array<string, mixed>|string $key

Ключ для записи.

mixed $value

Значение для записи.

string|bool $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

Данные для кеширования.

Возвращает

bool

clear() abstract public

clear(): bool

Удаляет все ключи из кэша

Возвращает

bool

clearGroup() abstract public

clearGroup(string $group): bool

Очищает все значения, относящиеся к группе. Реализующему движку решается, действительно ли удалять ключи или просто имитировать это, чтобы достичь того же результата.

Каждая реализация должна решить, действительно ли удалять ключи или просто увеличить значение генерации группы, чтобы достичь того же результата.

Параметры

string $group

имя группы для очистки

Возвращает

bool

configShallow() public

configShallow(array<string, mixed>|string $key, mixed|null $value = null): $this

Сливает предоставленную конфигурацию с существующей конфигурацией. В отличие от config(), которое выполняет рекурсивное слияние для вложенных ключей, этот метод выполняет простое слияние.

Установка определенного значения:

$this->configShallow('key', $value);

Установка вложенного значения:

$this->configShallow('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->configShallow(['one' => 'value', 'another' => 'value']);

Параметры

array<string, mixed>|string $key

Ключ для установки или полный массив конфигураций.

mixed|null $value optional

Значение для установки.

Возвращает

$this

decrement() abstract public

decrement(string $key, int $offset = 1): int|false

Уменьшает число по ключу и возвращает уменьшенное значение

Параметры

string $key

Идентификатор данных

int $offset optional

На сколько уменьшить

Возвращает

int|false

delete() abstract public

delete(string $key): bool

Удаляет ключ из кэша

Параметры

string $key

Идентификатор данных

Возвращает

bool

deleteMultiple() 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, будет использоваться значение по умолчанию драйвера.

Возвращает

int

ensureValidKey() 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\InvalidArgumentException

get() 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

Возвращаемое значение, когда ключ не существует.

Возвращает

mixed

getConfigOrFail() public

getConfigOrFail(string $key): mixed

Возвращает конфигурацию для этого определенного ключа.

Значение конфигурации для этого ключа должно существовать, оно никогда не может быть null.

Параметры

string $key

Ключ для получения.

Возвращает

mixed

Исключение

InvalidArgumentException

getMultiple() public

getMultiple(iterable $keys, mixed $default = null): iterable

Получает несколько элементов кэша по их уникальным ключам.

Параметры

iterable $keys

Список ключей, которые можно получить в одной операции.

mixed $default optional

Значение по умолчанию, которое возвращается для ключей, которых нет.

Возвращает

iterable

Исключения

Cake\Cache\InvalidArgumentException
Если $keys не является массивом или Traversable, или если какой-либо из $keys не является допустимым значением.

groups() public

groups(): array<string>

Выполняет необходимую инициализацию для каждой группы и возвращает group value для каждой из них, это маркер, представляющий каждую группу в ключе кэша.

Возвращает

array<string>

has() public

has(string $key): bool

Определяет, присутствует ли элемент в кэше.

ПРИМЕЧАНИЕ: рекомендуется использовать has() только для целей разогрева кэша, а не для использования в операциях get/set в ваших активных приложениях, так как этот метод подвержен гонке, когда ваш 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|false

init() public

init(array<string, mixed> $config = []): bool

Инициализировать движок кэша.

Вызывается автоматически передним фронтендом кэша. Объединяет конфигурацию выполнения с настройками по умолчанию перед использованием.

Параметры

array<string, mixed> $config optional

Ассоциативный массив параметров для движка.

Возвращает

bool

set() 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\InvalidArgumentException

setConfig() public

setConfig(array<string, mixed>|string $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']);

Параметры

array<string, mixed>|string $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<string, mixed>

$_configInitialized protected

Булево значение, указывающее, была ли конфигурация уже настроена со значениями по умолчанию.

Тип

bool

$_defaultConfig protected

Настройка кэша по умолчанию переопределяется в большинстве адаптеров кэша. Это ключи, общие для всех адаптеров. Если переопределены, это свойство не используется.

  • duration Указывает, как долго элементы в этой конфигурации кэша сохраняются.
  • groups Список групп или «меток», связанных с каждым ключом, хранящимся в этой конфигурации. Полезно для удаления целой группы из кэша.
  • prefix Префикс, добавляемый ко всем записям. Полезно, когда нужно использовать пространство ключей совместно с другой конфигурацией кэша или другим приложением.
  • warnOnWriteFailures Некоторые движки, такие как ApcuEngine, могут генерировать предупреждения при ошибках записи.

Тип

array<string, mixed>

$_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.3/class-Cake.Cache.CacheEngine.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API