CEAcceleratorCache
| Пакет | system.caching |
|---|---|
| Наследование | class CEAcceleratorCache » CCache » CApplicationComponent » CComponent |
| Реализует | ArrayAccess, ICache, IApplicationComponent |
| Исходный код | framework/caching/CEAcceleratorCache.php |
Для использования этого компонента, необходимо загрузить расширение eAccelerator PHP.
См. руководство по CCache для общих операций кэширования, поддерживаемых CEAccelerator.
Обратите внимание, что начиная с версии v0.9.6, eAccelerator больше не поддерживает кэширование данных. Это означает, что если вы по-прежнему хотите использовать этот компонент, ваша версия eAccelerator должна быть 0.9.5.x или ниже.
Общественные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| behaviors | массив | поведения, которые должны быть прикреплены к этому компоненту. | CApplicationComponent |
| hashKey | boolean | использовать md5-хеширование ключа кэша для нормализации. | CCache |
| isInitialized | boolean | Проверяет, был ли этот компонент приложения инициализирован. | CApplicationComponent |
| keyPrefix | строка | строка-префикс для каждого ключа кэша, чтобы он был уникальным. | CCache |
| serializer | массив|boolean | функции для сериализации и десериализации кэшированных данных. | CCache |
Общественные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает метод, который не является методом класса. | CComponent |
| __get() | Возвращает значение свойства, список обработчиков событий или поведение на основе его имени. | CComponent |
| __isset() | Проверяет, является ли значение свойства нулевым. | CComponent |
| __set() | Устанавливает значение свойства компонента. | CComponent |
| __unset() | Устанавливает свойство компонента в значение null. | CComponent |
| add() | Сохраняет значение, идентифицируемое ключом, в кэше, если кэш не содержит этот ключ. | CCache |
| asa() | Возвращает объект поведения по имени. | CComponent |
| attachBehavior() | Прикрепляет поведение к этому компоненту. | CComponent |
| attachBehaviors() | Прикрепляет список поведений к компоненту. | CComponent |
| attachEventHandler() | Прикрепляет обработчик событий к событию. | CComponent |
| canGetProperty() | Определяет, можно ли считать свойство. | CComponent |
| canSetProperty() | Определяет, можно ли установить свойство. | CComponent |
| delete() | Удаляет значение с заданным ключом из кэша. | CCache |
| detachBehavior() | Отсоединяет поведение от компонента. | CComponent |
| detachBehaviors() | Отсоединяет все поведения от компонента. | CComponent |
| detachEventHandler() | Отсоединяет существующий обработчик событий. | CComponent |
| disableBehavior() | Отключает присоединенное поведение. | CComponent |
| disableBehaviors() | Отключает все присоединенные поведения к этому компоненту. | CComponent |
| enableBehavior() | Включает присоединенное поведение. | CComponent |
| enableBehaviors() | Включает все присоединенные поведения к этому компоненту. | CComponent |
| evaluateExpression() | Вычисляет выражение PHP или обратный вызов в контексте этого компонента. | CComponent |
| flush() | Удаляет все значения из кэша. | CCache |
| get() | Возвращает значение из кэша по указанному ключу. | CCache |
| getEventHandlers() | Возвращает список присоединенных обработчиков событий для события. | CComponent |
| getIsInitialized() | Проверяет, был ли этот компонент приложения инициализирован. | CApplicationComponent |
| hasEvent() | Определяет, определено ли событие. | CComponent |
| hasEventHandler() | Проверяет, есть ли присоединенные обработчики к названному событию. | CComponent |
| hasProperty() | Определяет, определено ли свойство. | CComponent |
| init() | Инициализирует этот компонент приложения. | CEAcceleratorCache |
| mget() | Возвращает несколько значений из кэша по указанным ключам. | CCache |
| offsetExists() | Возвращает, есть ли запись в кэше с указанным ключом. | CCache |
| offsetGet() | Возвращает значение из кэша по заданному ключу. | CCache |
| offsetSet() | Сохраняет значение, идентифицируемое ключом, в кэш. | CCache |
| offsetUnset() | Удаляет значение с указанным ключом из кэша. | CCache |
| raiseEvent() | Вызывает событие. | CComponent |
| set() | Сохраняет значение, идентифицируемое ключом, в кэш. | CCache |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| addValue() | Сохраняет значение, идентифицируемое ключом, в кэше, если в кэше этот ключ отсутствует. | CEAcceleratorCache |
| deleteValue() | Удаляет значение с указанным ключом из кэша. | CEAcceleratorCache |
| flushValues() | Удаляет все значения из кэша. | CEAcceleratorCache |
| generateUniqueKey() | CCache | |
| getValue() | Извлекает значение из кэша по указанному ключу. | CEAcceleratorCache |
| getValues() | Извлекает несколько значений из кэша по указанным ключам. | CCache |
| setValue() | Сохраняет значение, идентифицируемое ключом, в кэше. | CEAcceleratorCache |
Подробное описание методов
addValue() метод
protected boolean addValue(string $key, string $value, integer $expire) | ||
| $key | string | ключ, идентифицирующий значение для кэширования |
| $value | string | значение для кэширования |
| $expire | integer | количество секунд, в течение которых кэшированное значение будет действовать. 0 означает, что значение никогда не истечёт. |
| {return} | boolean | true, если значение успешно сохранено в кэше, иначе false |
protected function addValue($key,$value,$expire)
{
return (NULL === eaccelerator_get($key)) ? $this->setValue($key,$value,$expire) : false;
}
Сохраняет значение, идентифицируемое ключом, в кэше, если в кэше этот ключ отсутствует. Это реализация метода, объявленного в родительском классе.
deleteValue() метод
protected boolean deleteValue(string $key) | ||
| $key | string | ключ удаляемого значения |
| {return} | boolean | если удаление прошло без ошибок |
protected function deleteValue($key)
{
return eaccelerator_rm($key);
}
Удаляет значение с указанным ключом из кэша. Это реализация метода, объявленного в родительском классе.
flushValues() метод (доступен с версии v1.1.5)
protected boolean flushValues() | ||
| {return} | boolean | успешно ли выполнена операция очистки. |
protected function flushValues()
{
// first, remove expired content from cache
eaccelerator_gc();
// now, remove leftover cache-keys
$keys = eaccelerator_list_keys();
foreach($keys as $key)
$this->deleteValue(substr($key['name'], 1));
return true;
}
Удаляет все значения из кэша. Это реализация метода, объявленного в родительском классе.
getValue() метод
protected string|boolean getValue(string $key) | ||
| $key | string | уникальный ключ, идентифицирующий кэшированное значение |
| {return} | string|boolean | значение, хранящееся в кэше, false, если значение отсутствует в кэше или истекло. |
protected function getValue($key)
{
$result = eaccelerator_get($key);
return $result !== NULL ? $result : false;
}
Извлекает значение из кэша по указанному ключу. Это реализация метода, объявленного в родительском классе.
init() метод
public void init() |
public function init()
{
parent::init();
if(!function_exists('eaccelerator_get'))
throw new CException(Yii::t('yii','CEAcceleratorCache requires PHP eAccelerator extension to be loaded, enabled or compiled with the "--with-eaccelerator-shared-memory" option.'));
}
Инициализирует компонент приложения. Этот метод необходим для интерфейса IApplicationComponent. Проверяет доступность eAccelerator.
setValue() метод
protected boolean setValue(string $key, string $value, integer $expire) | ||
| $key | string | ключ, идентифицирующий значение для кэширования |
| $value | string | значение для кэширования |
| $expire | integer | количество секунд, в течение которых кэшированное значение будет действовать. 0 означает, что значение никогда не истечёт. |
| {return} | boolean | true, если значение успешно сохранено в кэше, иначе false |
protected function setValue($key,$value,$expire)
{
return eaccelerator_put($key,$value,$expire);
}
Сохраняет значение, идентифицируемое ключом, в кэше. Это реализация метода, объявленного в родительском классе.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CEAcceleratorCache