CInlineFilter
| Пакет | system.web.filters |
|---|---|
| Наследование | класс CInlineFilter » CFilter » CComponent |
| Реализует | IFilter |
| С версии | 1.0 |
| Исходный код | framework/web/filters/CInlineFilter.php |
CInlineFilter представляет собой фильтр, определённый в качестве метода контроллера.
CInlineFilter выполняет метод 'filterXYZ($action)' контроллера, где имя 'XYZ' можно получить из свойства name.
CInlineFilter выполняет метод 'filterXYZ($action)' контроллера, где имя 'XYZ' можно получить из свойства name.
Свойства public
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| name | строка | имя фильтра. | CInlineFilter |
Методы public
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает метод по имени, который не является методом класса. | CComponent |
| __get() | Возвращает значение свойства, список обработчиков событий или поведение на основе его имени. | CComponent |
| __isset() | Проверяет, является ли значение свойства null. | CComponent |
| __set() | Устанавливает значение свойства компонента. | CComponent |
| __unset() | Устанавливает свойство компонента в null. | CComponent |
| asa() | Возвращает объект поведения по имени. | CComponent |
| attachBehavior() | Прикрепляет поведение к этому компоненту. | CComponent |
| attachBehaviors() | Прикрепляет список поведений к компоненту. | CComponent |
| attachEventHandler() | Прикрепляет обработчик событий к событию. | CComponent |
| canGetProperty() | Определяет, можно ли прочитать свойство. | CComponent |
| canSetProperty() | Определяет, можно ли установить свойство. | CComponent |
| create() | Создаёт экземпляр inline фильтра. | CInlineFilter |
| detachBehavior() | Отсоединяет поведение от компонента. | CComponent |
| detachBehaviors() | Отсоединяет все поведения от компонента. | CComponent |
| detachEventHandler() | Отсоединяет существующий обработчик событий. | CComponent |
| disableBehavior() | Отключает присоединённое поведение. | CComponent |
| disableBehaviors() | Отключает все присоединённые к этому компоненту поведения. | CComponent |
| enableBehavior() | Включает присоединённое поведение. | CComponent |
| enableBehaviors() | Включает все присоединённые к этому компоненту поведения. | CComponent |
| evaluateExpression() | Вычисляет PHP-выражение или обратный вызов в контексте этого компонента. | CComponent |
| filter() | Выполняет фильтрацию. | CInlineFilter |
| getEventHandlers() | Возвращает список присоединённых обработчиков событий для события. | CComponent |
| hasEvent() | Определяет, определено ли событие. | CComponent |
| hasEventHandler() | Проверяет, есть ли присоединённые обработчики для данного события. | CComponent |
| hasProperty() | Определяет, определено ли свойство. | CComponent |
| init() | Инициализирует фильтр. | CFilter |
| raiseEvent() | Возбуждает событие. | CComponent |
Методы protected
| Метод | Описание | Определено в |
|---|---|---|
| postFilter() | Выполняет фильтрацию после действия. | CFilter |
| preFilter() | Выполняет предварительную фильтрацию действия. | CFilter |
Подробное описание свойств
name свойство
public string $name;
имя фильтра. Оно соответствует 'XYZ' в имени метода фильтра 'filterXYZ'.
Подробное описание методов
create() метод
public static CInlineFilter create(CController $controller, string $filterName) | ||
| $controller | CController | контроллер, содержащий методы фильтра |
| $filterName | строка | имя фильтра |
| {return} | CInlineFilter | созданный экземпляр |
Исходный код: framework/web/filters/CInlineFilter.php#37 (показать)
public static function create($controller,$filterName)
{
if(method_exists($controller,'filter'.$filterName))
{
$filter=new CInlineFilter;
$filter->name=$filterName;
return $filter;
}
else
throw new CException(Yii::t('yii','Filter "{filter}" is invalid. Controller "{class}" does not have the filter method "filter{filter}".',
array('{filter}'=>$filterName, '{class}'=>get_class($controller))));
}
Создаёт экземпляр inline фильтра. Создание основано на строке, описывающей имя inline метода и имена действий, к которым должен или не должен применяться фильтр.
filter() метод
public void filter(CFilterChain $filterChain) | ||
| $filterChain | CFilterChain | цепочка фильтров, к которой относится фильтр. |
Исходный код: framework/web/filters/CInlineFilter.php#55 (показать)
public function filter($filterChain)
{
$method='filter'.$this->name;
$filterChain->controller->$method($filterChain);
}
Выполняет фильтрацию. Этот метод вызывает метод фильтра, определённый в классе контроллера.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CInlineFilter