Spec-Zone.ru › Yii 2.0

Класс yii\redis\Cache

Все классы | Свойства | Методы
Наследование yii\redis\Cache » yii\caching\Cache » yii\base\Component » yii\base\Object
Реализует yii\base\Configurable, yii\caching\CacheInterface
Доступно с версии 2.0
Исходный код https://github.com/yiisoft/yii2-redis/blob/master/Cache.php

Кеш Redis реализует компонент кеширования на основе хранилища ключей-значений redis.

Для корректной работы Redis Cache требуется версия redis 2.6.12 или выше.

Он должен быть сконфигурирован с redis yii\redis\Connection, который также сконфигурирован как компонент приложения. По умолчанию он будет использовать компонент приложения redis.

См. руководство yii\redis\Cache для общих операций кеширования, поддерживаемых redis Cache.

В отличие от yii\redis\Cache, redis Cache позволяет параметру expire в методах set(), add(), mset() и madd() быть числом с плавающей запятой, поэтому вы можете указать время в миллисекундах (например, 0.1 будет 100 миллисекундами).

Для использования redis Cache в качестве компонента кеширования приложения настройте приложение следующим образом:

[
    'components' => [
        'cache' => [
            'class' => 'yii\redis\Cache',
            'redis' => [
                'hostname' => 'localhost',
                'port' => 6379,
                'database' => 0,
            ]
        ],
    ],
]

Или, если вы уже сконфигурировали redis yii\redis\Connection как компонент приложения, достаточно следующего:

[
    'components' => [
        'cache' => [
            'class' => 'yii\redis\Cache',
            // 'redis' => 'redis' // id of the connection application component
        ],
    ],
]

Публичные свойства

Свойство Тип Описание Определено
$behaviors yii\base\Behavior[] Список присоединенных к этому компоненту поведений yii\base\Component
$defaultDuration integer Длительность по умолчанию в секундах, по истечении которой запись кеша истекает. yii\caching\Cache
$keyPrefix string Строка, добавляемая в качестве префикса к каждому ключу кеша, чтобы он был уникальным во всем хранилище кеша. yii\caching\Cache
$redis yii\redis\Connection|string|array Объект Redis yii\redis\Connection или идентификатор компонента приложения Redis yii\redis\Connection. yii\redis\Cache
$serializer null|array|false Функции для сериализации и десериализации данных кеша. yii\caching\Cache

Публичные методы

Метод Описание Определено в
__call() Вызывает именованный метод, который не является методом класса. yii\base\Object
__clone() Этот метод вызывается после создания объекта путем клонирования существующего. yii\base\Component
__construct() Конструктор. yii\base\Object
__get() Возвращает значение свойства объекта. yii\base\Object
__isset() Проверяет, установлено ли свойство, т.е. определено и не равно null. yii\base\Object
__set() Устанавливает значение свойства объекта. yii\base\Object
__unset() Устанавливает свойство объекта в значение null. yii\base\Object
add() Сохраняет значение, идентифицируемое ключом, в кэш, если в кэше этот ключ отсутствует. yii\caching\Cache
attachBehavior() Присоединяет поведение к этому компоненту. yii\base\Component
attachBehaviors() Присоединяет список поведений к компоненту. yii\base\Component
behaviors() Возвращает список поведений, по которым должен действовать этот компонент. yii\base\Component
buildKey() Создаёт нормализованный ключ кэша из данного ключа. yii\caching\Cache
canGetProperty() Возвращает значение, указывающее, можно ли прочитать свойство. yii\base\Object
canSetProperty() Возвращает значение, указывающее, можно ли установить свойство. yii\base\Object
className() Возвращает полное квалифицированное имя этого класса. yii\base\Object
delete() Удаляет значение с заданным ключом из кэша yii\caching\Cache
detachBehavior() Отсоединяет поведение от компонента. yii\base\Component
detachBehaviors() Отсоединяет все поведения от компонента. yii\base\Component
ensureBehaviors() Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. yii\base\Component
exists() Проверяет, существует ли указанный ключ в кэше. yii\redis\Cache
flush() Удаляет все значения из кэша. yii\caching\Cache
get() Извлекает значение из кэша по указанному ключу. yii\caching\Cache
getBehavior() Возвращает объект поведения с заданным именем. yii\base\Component
getBehaviors() Возвращает все поведения, присоединённые к этому компоненту. yii\base\Component
getOrSet() Метод объединяет методы set() и get() для извлечения значения, идентифицируемого ключом $key, или для хранения результата выполнения $callable, если для $key нет кэшированного значения. yii\caching\Cache
hasEventHandlers() Возвращает значение, указывающее, прикреплён ли какой-либо обработчик к указанному событию. yii\base\Component
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
init() Инициализирует компонент кэширования redis. yii\redis\Cache
madd() Сохраняет несколько элементов в кэше. Каждый элемент содержит значение, идентифицируемое ключом. yii\caching\Cache
mget() Извлекает несколько значений из кэша по указанным ключам. yii\caching\Cache
mset() Сохраняет несколько элементов в кэше. Каждый элемент содержит значение, идентифицируемое ключом. yii\caching\Cache
multiAdd() Сохраняет несколько элементов в кэше. Каждый элемент содержит значение, идентифицируемое ключом. yii\caching\Cache
multiGet() Извлекает несколько значений из кэша по указанным ключам. yii\caching\Cache
multiSet() Сохраняет несколько элементов в кэше. Каждый элемент содержит значение, идентифицируемое ключом. yii\caching\Cache
off() Отсоединяет существующий обработчик событий от этого компонента. yii\base\Component
offsetExists() Возвращает, есть ли запись в кэше с указанным ключом. yii\caching\Cache
offsetGet() Извлекает значение из кэша по указанному ключу. yii\caching\Cache
offsetSet() Сохраняет значение, идентифицируемое ключом, в кэш. yii\caching\Cache
offsetUnset() Удаляет значение с указанным ключом из кэша. Этот метод требуется интерфейсом ArrayAccess. yii\caching\Cache
on() Присоединяет обработчик событий к событию. yii\base\Component
set() Сохраняет значение, идентифицируемое ключом, в кэш. yii\caching\Cache
trigger() Вызывает событие. yii\base\Component

Защищённые методы

Метод Описание Определено в
addValue() Сохраняет значение, идентифицированное ключом, в кэше, если этот ключ в кэше отсутствует. yii\redis\Cache
addValues() Добавляет несколько пар ключ-значение в кэш. yii\caching\Cache
deleteValue() Удаляет значение с указанным ключом из кэша. Этот метод должен быть реализован дочерними классами для удаления данных из фактического хранилища кэша. yii\redis\Cache
flushValues() Удаляет все значения из кэша. yii\redis\Cache
getValue() Извлекает значение из кэша по указанному ключу. yii\redis\Cache
getValues() Извлекает несколько значений из кэша по указанным ключам. yii\redis\Cache
setValue() Сохраняет значение, идентифицированное ключом, в кэше. yii\redis\Cache
setValues() Сохраняет несколько пар ключ-значение в кэше. yii\redis\Cache

Подробное описание свойств

$redis общедоступное свойство

Объект yii\redis\Connection Redis или идентификатор компонента приложения для yii\redis\Connection Redis. Это также может быть массив, используемый для создания экземпляра yii\redis\Connection redis, если вы не хотите настраивать подключение redis как компонент приложения. После создания объекта Cache, если вы хотите изменить это свойство, вы должны назначить ему только объект yii\redis\Connection Redis.

public yii\redis\Connection|string|array $redis = 'redis'

Подробное описание методов

addValue() защищённый метод

Сохраняет значение, идентифицированное ключом, в кэше, если этот ключ в кэше отсутствует.

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

защищённый boolean addValue ( $key, $value, $expire )
$key string

Ключ, идентифицирующий значение для кэширования

$value mixed

Значение для кэширования. Чаще всего это строка. Если вы отключили $serializer, это может быть что-то другое.

$expire
return boolean

True, если значение успешно сохранено в кэше, иначе false

deleteValue() защищённый метод

Удаляет значение с указанным ключом из кэша. Этот метод должен быть реализован дочерними классами для удаления данных из фактического хранилища кэша.

защищённый boolean deleteValue ( $key )
$key string

Ключ удаляемого значения

return boolean

True, если удаление прошло без ошибок

exists() общедоступный метод

Проверяет, существует ли указанный ключ в кэше.

Это может быть быстрее, чем извлечение значения из кэша, если данные большие. Обратите внимание, что этот метод не проверяет, изменилась ли зависимость, связанная с кэшированными данными (если таковая имеется). Поэтому вызов get() может вернуть false, в то время как exists вернёт true.

общедоступный boolean exists ( $key )
$key mixed

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

return boolean

True, если значение существует в кэше, false — если значение отсутствует в кэше или истекло.

flushValues() защищённый метод

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

Дочерние классы могут реализовать этот метод для выполнения операции сброса.

защищённый boolean flushValues ( )
return boolean

Успешно ли выполнена операция сброса.

getValue() защищённый метод

Извлекает значение из кэша по указанному ключу.

Этот метод должен быть реализован дочерними классами для извлечения данных из конкретного хранилища кэша.

защищённый mixed|false getValue ( $key )
$key string

Уникальный ключ, идентифицирующий кэшированное значение

return mixed|false

Значение, хранящееся в кэше, false — если значение отсутствует в кэше или истекло. Чаще всего значение — строка. Если вы отключили $serializer, это может быть что-то другое.

getValues() защищённый метод

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

Базовая реализация многократно вызывает getValue() для извлечения кэшированных значений по одному. Если хранилище кэша поддерживает multiget, этот метод должен быть переопределён для использования этой функции.

защищённый array getValues ( $keys )
$keys array

Список ключей, идентифицирующих кэшированные значения

return array

Список кэшированных значений, индексированных по ключам

init() общедоступный метод

Инициализирует компонент кэша redis.

Этот метод инициализирует свойство $redis, чтобы убедиться, что оно ссылается на действительное подключение redis.

общедоступный void init ( )
throws yii\base\InvalidConfigException

если $redis некорректен.

setValue() защищённый метод

Сохраняет значение, идентифицированное ключом, в кэше.

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

защищённый boolean setValue ( $key, $value, $expire )
$key string

Ключ, идентифицирующий значение для кэширования

$value mixed

Значение для кэширования. Чаще всего это строка. Если вы отключили $serializer, это может быть что-то другое.

$expire
return boolean

True, если значение успешно сохранено в кэше, иначе false

setValues() защищённый метод

Сохраняет несколько пар ключ-значение в кэше.

Базовая реализация многократно вызывает setValue() для сохранения значений по одному. Если хранилище кэша поддерживает multi-set, этот метод следует переопределить для использования этой возможности.

защищённый array setValues ( $data, $expire )
$data array

Массив, где ключ соответствует ключу кэша, а значение — хранимому значению

$expire
return array

Массив неудачных ключей

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-redis-cache.html

Spec-Zone.ru

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