Класс RedisEngine
Двигатель Redis для кеширования.
- Cake\Cache\CacheEngine использует Cake\Core\InstanceConfigTrait
-
Cake\Cache\Engine\RedisEngine
Краткое описание свойств
-
$_RedisprotectedОбёртка над Redis.Redis -
$_defaultConfigprotectedКонфигурация по умолчанию, если не переопределена конфигурацией во время выполнения.array
Наследованные свойства
Краткое описание методов
- __destruct() publicОтключается от сервера Redis.
- _connect() protectedПодключается к серверу Redis.
- add() public
Записывает данные для ключа в кэш, если ключ ещё не существует. Если ключ уже существует, операция завершается неудачей и возвращает false.
- clear() publicУдаляет все ключи из кэша.
- clearGroup() public
Увеличивает значение группы, чтобы симулировать удаление всех ключей в группе. Старые значения остаются в хранилище до истечения срока их действия.
- decrement() publicУменьшает значение целочисленного кэшированного ключа.
- delete() publicУдаляет ключ из кэша.
- groups() public
Возвращает значения
group valueдля каждой из настроенных групп. Если начальное значение группы не найдено, то группа инициализируется соответствующим образом. - increment() publicУвеличивает значение целочисленного кэшированного ключа.
- init() publicИнициализирует движок кэша.
- read() publicСчитывает ключ из кэша.
- write() publicЗаписывает данные для ключа в кэш.
Подробное описание методов
_connect()source protected
_connect( )
Подключается к серверу Redis
Возвращает
booleanTrue, если сервер Redis подключён
add()source public
add( string $key , mixed $value )
Записывает данные для ключа в кэш, если ключ ещё не существует. Если ключ уже существует, операция завершается неудачей и возвращает false.
Параметры
- string
$key - Идентификатор данных.
- mixed
$value - Данные для кэширования.
Возвращает
booleanTrue, если данные успешно кэшированы, false в случае неудачи.
Ссылка
https://github.com/phpredis/phpredis#setnxПереопределяет
Cake\Cache\CacheEngine::add() clear()source public
clear( boolean $check )
Удаляет все ключи из кэша
Параметры
- boolean
$check - Если true, проверяет срок действия, иначе удаляет все.
Возвращает
booleanTrue, если кэш был успешно очищен, false в противном случае
clearGroup()source public
clearGroup( string $group )
Увеличивает значение группы, чтобы симулировать удаление всех ключей в группе. Старые значения остаются в хранилище до истечения срока их действия.
Параметры
- string
$group - имя группы для очистки
Возвращает
booleanуспех
Переопределяет
Cake\Cache\CacheEngine::clearGroup() decrement()source public
decrement( string $key , integer $offset 1 )
Уменьшает значение целочисленного кэшированного ключа
Параметры
- string
$key - Идентификатор данных
- integer
$offsetопционально 1 - На сколько уменьшить
Возвращает
boolean|integerНовое уменьшенное значение, false в противном случае
delete()source public
delete( string $key )
Удаляет ключ из кэша
Параметры
- string
$key - Идентификатор данных
Возвращает
booleanTrue, если значение было успешно удалено, false, если значения не существовало или не удалось удалить
groups()source public
groups( )
Возвращает значения для каждой из настроенных групп. Если начальное значение группы не найдено, то группа инициализируется соответствующим образом.
Возвращает
массивПереопределяет
Cake\Cache\CacheEngine::groups() increment()source public
increment( string $key , integer $offset 1 )
Увеличивает значение целочисленного кэшированного ключа
Параметры
- string
$key - Идентификатор данных
- integer
$offsetопционально 1 - На сколько увеличить
Возвращает
boolean|integerНовое увеличенное значение, false в противном случае
init()source public
init( array $config [] )
Инициализирует движок кэша
Вызывается автоматически фронтендом кэша
Параметры
- array
$configопционально [] - массив настроек для движка
Возвращает
booleanTrue, если движок успешно инициализирован, false в противном случае
Переопределяет
Cake\Cache\CacheEngine::init() read()source public
read( string $key )
Считывает ключ из кэша
Параметры
- string
$key - Идентификатор данных
Возвращает
mixedКэшированные данные или false, если данных нет, срок действия истек или произошла ошибка при получении
write()source public
write( string $key , mixed $value )
Записывает данные для ключа в кэш.
Параметры
- string
$key - Идентификатор данных
- mixed
$value - Данные для кэширования
Возвращает
booleanTrue, если данные успешно кэшированы, false в случае неудачи
Наследованные методы из Cake\Cache\CacheEngine
_key()source protected
_key( string $key )
Генерирует безопасный ключ, учитывая настроенный префикс ключа
Параметры
- string
$key - переданный ключ
Возвращает
mixedstring $key или false
Исключения
InvalidArgumentExceptionЕсли значение ключа пустое
deleteMany()source public
deleteMany( array $keys )
Удаляет ключи из кэша
Параметры
- массив
$keys - Массив идентификаторов данных
Возвращает
массивДля каждого предоставленного ключа кэша (указанного в качестве ключа массива) true, если значение было успешно удалено, false, если оно не существовало или не могло быть удалено
gc()source public
gc( integer|null $expires null )
Сбор мусора
Постоянно удаляет все устаревшие и удалённые данные
Параметры
- целое число|null
$expiresнеобязательно null - [необязательно] Отметка времени истечения срока действия, делающая недействительными все данные до неё.
key()source public
key( string $key )
Генерирует безопасный ключ для использования с хранилищами кэша.
Параметры
- строка
$key - переданный ключ
Возвращает
булево значение|строкаключ строки или false
readMany()source public
readMany( array $keys )
Чтение нескольких ключей из кэша
Параметры
- массив
$keys - Массив идентификаторов данных
Возвращает
массивДля каждого ключа кэша (указанного в качестве ключа массива) данные кэша или 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 - Ключ для чтения.
Возвращает
смешанный тип_configWrite()source protected
_configWrite( string|array $key , mixed $value , boolean|string $merge false )
Запись переменной конфигурации
Параметры
- строка|массив
$key - Ключ для записи.
- смешанный тип
$value - Значение для записи.
- булево значение|строка
$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 - Значение для установки.
- булево значение
$mergeнеобязательно true - Рекурсивное слияние или перезапись существующей конфигурации, по умолчанию true.
Возвращает
смешанный типЗначение конфигурации, считываемое, или сам объект при операциях записи.
Выбрасывает
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 массив
Конфигурация по умолчанию, используемая, если не переопределена в конфигурации runtime
-
databaseномер базы данных для подключения. -
durationУказывает, как долго элементы в этой конфигурации кэша сохраняются. -
groupsСписок групп или «тегов», связанных с каждым ключом, хранящимся в этой конфигурации. Удобно для удаления целой группы из кэша. -
passwordПароль сервера Redis. -
persistentПодключение к серверу Redis с постоянным подключением -
portНомер порта сервера Redis. -
prefixПрефикс, добавляемый ко всем записям. Подходит для случаев, когда необходимо совместно использовать пространство имён ключей с другой конфигурацией кэша или другим приложением. -
probabilityВероятность попадания в очистку кэша gc. Установка в 0 отключит автоматическое вызов cache::gc. -
serverURL или IP-адрес хоста сервера Redis. -
timeoutВремя ожидания в секундах (с плавающей точкой). -
unix_socketПуть к файлу сокета Unix (по умолчанию: false)
[
'database' => 0,
'duration' => 3600,
'groups' => [],
'password' => false,
'persistent' => true,
'port' => 6379,
'prefix' => 'cake_',
'probability' => 100,
'host' => null,
'server' => '127.0.0.1',
'timeout' => 0,
'unix_socket' => false,
]
© 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.Engine.RedisEngine.html