Класс CacheEngine
Двигатель кеширования для CakePHP
- Cake\Cache\CacheEngine использует Cake\Core\InstanceConfigTrait
Прямые подклассы
- Cake\Cache\Engine\ApcEngine
- 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Читает несколько ключей из кеша
- Записывает значение для ключа в кеш
- 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 - если true, проверит срок действия, иначе удалит все
Возвращает
логическое значениеTrue, если кеш успешно очищен, false в противном случае
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 - Идентификатор данных
Возвращает
логическое значениеTrue, если значение было успешно удалено, false, если оно не существовало или не удалось удалить
deleteMany()source public
deleteMany( array $keys )
Удаляет ключи из кеша
Параметры
- массив
$keys - Массив идентификаторов данных
Возвращает
массивДля каждого предоставленного ключа кеша (возвращается в качестве ключа массива) true, если значение было успешно удалено, false, если оно не существовало или не удалось удалить
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 - Массив идентификаторов данных
Возвращает
массивДля каждого ключа кэша (указанного в качестве ключа массива) связанные данные кэша или false, если данных нет, они истекли или произошла ошибка при их получении
write()source abstract public
write( string $key , mixed $value )
Записать значение для ключа в кэш
Параметры
- строка
$key - Идентификатор данных
- смешанный
$value - Данные для кэширования
Возвращает
booleanTrue, если данные были успешно кэшированы, false — при ошибке
writeMany()source public
writeMany( array $data )
Записать данные для многих ключей в кэш
Параметры
- массив
$data - Массив данных для хранения в кэше
Возвращает
массивмассив булевых значений для каждого ключа, 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|string
$mergeнеобязательно false True для рекурсивного объединения, 'shallow' для простого объединения, false для перезаписи, по умолчанию false.
Исключения
Cake\Core\Exception\Exceptionесли попытка перезаписи существующей конфигурации
config()source public
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']);
Параметры
- строка|массив|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->config('key', $value); Установка вложенного значения:
$this->config('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->config(['one' => 'value', 'another' => 'value']);
Параметры
- строка|массив
$key - Ключ для установки или весь массив конфигурации.
- смешанный|null
$valueнеобязательно null - Значение для установки.
Возвращает
$this Объект.
Подробности свойств
$_defaultConfigsource
protected массив
Конфигурация кэша по умолчанию переопределяется в большинстве адаптеров кэша. Это ключи, общие для всех адаптеров. Если переопределено, это свойство не используется.
-
durationУкажите, как долго элементы в этой конфигурации кэша остаются в кэше. -
groupsСписок групп или «меток», связанных с каждым ключом, хранящимся в этой конфигурации. Полезно для удаления всей группы из кэша. -
prefixПрефикс, добавляемый ко всем записям. Полезно, когда вам нужно использовать пространство ключей с другой конфигурацией кэша или другим приложением. -
probabilityВероятность запуска очистки кэша gc. Установка значения 0 отключит автоматический вызов cache::gc.
[
'duration' => 3600,
'groups' => [],
'prefix' => 'cake_',
'probability' => 100
] $_groupPrefixsource
protected строка
Содержит составную строку со всеми префиксами групп, которые будут добавлены к каждому ключу в этом кеш-движке
null
© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.Cache.CacheEngine.html