Класс CacheEngine
Двигатель кеширования для CakePHP
- Cake\Cache\CacheEngine использует Cake\Core\InstanceConfigTrait
Непосредственные подклассы
- Cake\Cache\Engine\ApcuEngine
- Cake\Cache\Engine\ArrayEngine
- Cake\Cache\Engine\FileEngine
- Cake\Cache\Engine\MemcachedEngine
- Cake\Cache\Engine\NullEngine
- Cake\Cache\Engine\RedisEngine
- Cake\Cache\Engine\WincacheEngine
- Cake\Cache\Engine\XcacheEngine
Краткое описание свойств
-
$_defaultConfigprotectedarrayВ большинстве адаптеров кеширования конфигурация по умолчанию переопределяется. Это те ключи, которые общие для всех адаптеров. Если переопределён, это свойство не используется.
-
$_groupPrefixprotectedstringСодержит скомпилированную строку со всеми префиксами групп, которые должны быть добавлены к каждому ключу в этом движке кеширования
Наследуемые свойства
Краткое описание методов
- _key() protectedГенерирует безопасный ключ, учитывая настроенный префикс ключа
- add() publicДобавляет ключ в кеш, если он ещё не существует.
- Удаляет все ключи из кеша
- clearGroup() public
Очищает все значения, принадлежащие группе. Реализация должна самостоятельно решить, действительно удалять ключи или просто имитировать действие, чтобы достичь того же результата.
- Уменьшает число по ключу и возвращает уменьшенное значение
- Удаляет ключ из кеша
- deleteMany() publicУдаляет ключи из кеша
- gc() publicСбор мусора
- groups() public
Выполняет необходимые инициализации для каждой группы и возвращает
group valueдля каждой из них, это маркер, представляющий каждую группу в ключе кеша - Увеличивает число по ключу и возвращает увеличенное значение
- init() publicИнициализирует движок кеширования
- key() publicГенерирует безопасный ключ для использования с движками хранения кеша.
- Чтение ключа из кеша
- readMany() publicЧтение нескольких ключей из кеша
- warning() protected
Движки кеширования могут генерировать предупреждения, если они сталкиваются с ошибками во время работы, если параметр warnOnWriteFailures установлен в значение true.
- Запись значения для ключа в кеш
- writeMany() publicЗапись данных для многих ключей в кеш
Подробное описание методов
_key()source protected
_key( string $key )
Генерирует безопасный ключ, учитывая настроенный префикс ключа
Параметры
- строка
$key - переданный ключ
Возвращает
смешанныйстрока $key или false
Выбрасывает
InvalidArgumentExceptionЕсли значение ключа пусто
add()source public
add( string $key , mixed $value )
Добавляет ключ в кеш, если он ещё не существует.
По умолчанию используется неатомарная реализация. Подклассы должны использовать атомарные реализации.
Параметры
- строка
$key - Идентификатор данных.
- смешанный
$value - Данные, которые необходимо кешировать.
Возвращает
булевоИстина, если данные были успешно добавлены в кеш, ложь в противном случае.
clear()source abstract public
clear( boolean $check )
Удаляет все ключи из кеша
Параметры
- булево
$check - если истинно, проверит срок действия, иначе удалит все
Возвращает
булевоИстина, если кеш был успешно очищен, ложь в противном случае
clearGroup()source public
clearGroup( string $group )
Очищает все значения, принадлежащие группе. Реализация должна самостоятельно решить, действительно удалять ключи или просто имитировать действие, чтобы достичь того же результата.
Параметры
- строка
$group - имя группы, подлежащей очистке
Возвращает
булевоdecrement()source abstract public
decrement( string $key , integer $offset = 1 )
Уменьшает число по ключу и возвращает уменьшенное значение
Параметры
- строка
$key - Идентификатор данных
- целое
$offsetопционально 1 - На сколько уменьшить
Возвращает
булево|целоеНовое значение, уменьшенное на указанное число, ложь в противном случае
delete()source abstract public
delete( string $key )
Удаляет ключ из кеша
Параметры
- строка
$key - Идентификатор данных
Возвращает
булевоИстина, если значение было успешно удалено, ложь, если значение не существовало или не удалось удалить
deleteMany()source public
deleteMany( array $keys )
Удаляет ключи из кеша
Параметры
- массив
$keys - Массив идентификаторов данных
Возвращает
массивДля каждого предоставленного ключа кеша (возвращаемого в качестве ключа массива) истинно, если значение было успешно удалено, ложь, если значение не существовало или не удалось удалить
gc()source public
gc( integer|null $expires = null )
Сбор мусора
Постоянно удаляет все истекшие и удалённые данные
Параметры
- целое|null
$expiresопционально null - [опционально] Отметка времени истечения срока действия, делающая все данные до неё недействительными.
groups()source public
groups( )
Выполняет необходимые инициализации для каждой группы и возвращает group value для каждой из них, это маркер, представляющий каждую группу в ключе кеша
Возвращает
массивincrement()source abstract public
increment( string $key , integer $offset = 1 )
Увеличить число по ключу и вернуть увеличенное значение
Параметры
- строка
$key - Идентификатор данных
- целое число
$offsetопционально 1 - На сколько увеличить
Возвращает
boolean|integerНовое увеличенное значение, иначе false
init()source public
init( array $config = [] )
Инициализировать движок кэша
Вызывается автоматически передним планом кэша. Объединить конфигурацию выполнения с параметрами по умолчанию перед использованием.
Параметры
- массив
$configопционально [] - Ассоциативный массив параметров для движка
Возвращает
booleanTrue, если движок успешно инициализирован, иначе false
key()source public
key( string $key )
Генерирует безопасный ключ для использования с движками хранения кэша.
Параметры
- строка
$key - переданный ключ
Возвращает
boolean|stringстроковый ключ или false
read()source abstract public
read( string $key )
Прочитать ключ из кэша
Параметры
- строка
$key - Идентификатор данных
Возвращает
mixedДанные кэша или false, если данных нет, истек срок действия или произошла ошибка при их извлечении
readMany()source public
readMany( array $keys )
Прочитать несколько ключей из кэша
Параметры
- массив
$keys - Массив идентификаторов данных
Возвращает
arrayДля каждого ключа кэша (указанного в качестве ключа массива) данные кэша или false, если данных нет, истек срок действия или произошла ошибка при их извлечении
warning()source protected
warning( string $message )
Движки кэша могут вызывать предупреждения, если они сталкиваются с ошибками во время работы, если параметр warnOnWriteFailures установлен в значение true.
Параметры
- строка
$message - Сообщение об ошибке.
write()source abstract public
write( string $key , mixed $value )
Записать значение ключа в кэш
Параметры
- строка
$key - Идентификатор данных
- смешанный
$value - Данные для кэширования
Возвращает
booleanTrue, если данные успешно кэшированы, иначе false
writeMany()source public
writeMany( array $data )
Записать данные для многих ключей в кэш
Параметры
- массив
$data - Массив данных для хранения в кэше
Возвращает
массивзначений boolean для каждого ключа, true, если данные успешно кэшированы, иначе false
Методы, используемые из Cake\Core\InstanceConfigTrait
_configDelete()source protected
_configDelete( string $key )
Удаляет один ключ конфигурации.
Параметры
- строка
$key - Ключ для удаления.
Выбрасывает
Cake\Core\Exception\Exceptionесли попытка перезаписать существующую конфигурацию
_configRead()source protected
_configRead( string|null $key )
Читает ключ конфигурации.
Параметры
- строка|null
$key - Ключ для чтения.
Возвращает
mixed_configWrite()source protected
_configWrite( string|array $key , mixed $value , boolean|string $merge = false )
Записывает ключ конфигурации.
Параметры
- строка|массив
$key - Ключ для записи.
- смешанный
$value - Значение для записи.
- boolean|строка
$mergeопционально false True для рекурсивного объединения, 'shallow' для простого объединения, false для перезаписи, по умолчанию false.
Выбрасывает
Cake\Core\Exception\Exceptionесли попытка перезаписи существующей конфигурации
config()source public deprecated
config( string|array|null $key = null , mixed|null $value = null , boolean $merge = true )
Получение/установка конфигурации.
Использование
Чтение всей конфигурации:
$this->config();
Чтение определенного значения:
$this->config('key'); Чтение вложенного значения:
$this->config('some.nested.key'); Установка определенного значения:
$this->config('key', $value); Установка вложенного значения:
$this->config('some.nested.key', $value); Обновление нескольких параметров конфигурации одновременно:
$this->config(['one' => 'value', 'another' => 'value']);
Устарело
3.4.0 использовать setConfig()/getConfig() вместо этого.Параметры
- строка|массив|null
$keyопционально null - Ключ для получения/установки или полный массив конфигурации.
- смешанный|null
$valueопционально null - Значение для установки.
- boolean
$mergeопционально true - Рекурсивное объединение или перезапись существующей конфигурации, по умолчанию true.
Возвращает
mixedЗначение конфигурации, которое считывается, или сам объект при операциях записи.
Выбрасывает
Cake\Core\Exception\ExceptionПри попытке установить неверный ключ.
configShallow()source public
configShallow( string|array $key , mixed|null $value = null )
Объединить предоставленную конфигурацию с существующей конфигурацией. В отличие от config() , которая выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.
Установка определенного значения:
$this->configShallow('key', $value); Установка вложенного значения:
$this->configShallow('some.nested.key', $value); Обновление нескольких параметров конфигурации одновременно:
$this->configShallow(['one' => 'value', 'another' => 'value']);
Параметры
- строка|массив
$key - Ключ для установки или полный массив конфигурации.
- смешанный|null
$valueопционально null - Значение для установки.
Возвращает
$this
getConfig()source public
getConfig( string|null $key = null , mixed $default = null )
Возвращает конфигурацию.
Использование
Чтение всей конфигурации:
$this->getConfig();
Чтение определенного значения:
$this->getConfig('key'); Чтение вложенного значения:
$this->getConfig('some.nested.key'); Чтение со значением по умолчанию:
$this->getConfig('some-key', 'default-value'); Параметры
- строка|null
$keyопционально null - Ключ для получения или null для всей конфигурации.
- смешанный
$defaultопционально null - Значение по умолчанию, если ключ не существует.
Возвращает
mixedДанные конфигурации по указанному ключу или null, если ключ не существует.
setConfig()source public
setConfig( string|array $key , mixed|null $value = null , boolean $merge = true )
Устанавливает конфигурацию.
Использование
Установка определенного значения:
$this->setConfig('key', $value); Установка вложенного значения:
$this->setConfig('some.nested.key', $value); Обновление нескольких параметров конфигурации одновременно:
$this->setConfig(['one' => 'value', 'another' => 'value']);
Параметры
- строка|массив
$key - Ключ для установки или полный массив конфигурации.
- смешанный|null
$valueопционально null - Значение для установки.
- boolean
$mergeопционально true - Рекурсивное объединение или перезапись существующей конфигурации, по умолчанию true.
Возвращает
$this
Выбрасывает
Cake\Core\Exception\ExceptionПри попытке установить неверный ключ.
Подробное описание свойств
$_defaultConfigsource
protected массив
Настройка кеша по умолчанию переопределяется в большинстве адаптеров кеша. Эти ключи общие для всех адаптеров. Если переопределён, это свойство не используется.
-
durationУказывает, как долго элементы в этой конфигурации кеша хранятся. -
groupsСписок групп или «меток», связанных с каждым ключом, хранящимся в этой конфигурации. Полезно для удаления целой группы из кеша. -
prefixПрефикс, добавляемый ко всем записям. Полезно, когда необходимо использовать одно и то же пространство ключей с другой конфигурацией кеша или другим приложением. -
probabilityВероятность запуска очистки кеша gc. Установка в 0 отключит автоматическое вызов cache::gc. -
warnOnWriteFailuresНекоторые движки, такие как ApcuEngine, могут выводить предупреждения при ошибках записи.
[
'duration' => 3600,
'groups' => [],
'prefix' => 'cake_',
'probability' => 100,
'warnOnWriteFailures' => true,
] $_groupPrefixsource
protected строка
Содержит скомпилированную строку со всеми префиксами групп, которые должны быть добавлены к каждому ключу в этом движке кеша
© 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/3.8/class-Cake.Cache.CacheEngine.html