Spec-Zone.ru › Yii 1.1

CInlineFilter

Пакет system.web.filters
Наследование класс CInlineFilter » CFilter » CComponent
Реализует IFilter
С версии 1.0
Исходный код framework/web/filters/CInlineFilter.php
CInlineFilter представляет собой фильтр, определённый в качестве метода контроллера.

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

Spec-Zone.ru

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