CInlineFilter
包 | system.web.filters |
---|---|
继承 | class CInlineFilter » CFilter » CComponent |
实现 | IFilter |
可用自 | 1.0 |
源码 | framework/web/filters/CInlineFilter.php |
CInlineFilter represents a filter defined as a controller method.
CInlineFilter executes the 'filterXYZ($action)' method defined in the controller, where the name 'XYZ' can be retrieved from the name property.
CInlineFilter executes the 'filterXYZ($action)' method defined in the controller, where the name 'XYZ' can be retrieved from the name property.
公共方法
方法 | 描述 | 被定义在 |
---|---|---|
__call() | Calls the named method which is not a class method. | CComponent |
__get() | Returns a property value, an event handler list or a behavior based on its name. | CComponent |
__isset() | Checks if a property value is null. | CComponent |
__set() | Sets value of a component property. | CComponent |
__unset() | Sets a component property to be null. | CComponent |
asa() | Returns the named behavior object. | CComponent |
attachBehavior() | Attaches a behavior to this component. | CComponent |
attachBehaviors() | Attaches a list of behaviors to the component. | CComponent |
attachEventHandler() | Attaches an event handler to an event. | CComponent |
canGetProperty() | Determines whether a property can be read. | CComponent |
canSetProperty() | Determines whether a property can be set. | CComponent |
create() | Creates an inline filter instance. | CInlineFilter |
detachBehavior() | Detaches a behavior from the component. | CComponent |
detachBehaviors() | Detaches all behaviors from the component. | CComponent |
detachEventHandler() | Detaches an existing event handler. | CComponent |
disableBehavior() | Disables an attached behavior. | CComponent |
disableBehaviors() | Disables all behaviors attached to this component. | CComponent |
enableBehavior() | Enables an attached behavior. | CComponent |
enableBehaviors() | Enables all behaviors attached to this component. | CComponent |
evaluateExpression() | Evaluates a PHP expression or callback under the context of this component. | CComponent |
filter() | Performs the filtering. | CInlineFilter |
getEventHandlers() | Returns the list of attached event handlers for an event. | CComponent |
hasEvent() | Determines whether an event is defined. | CComponent |
hasEventHandler() | Checks whether the named event has attached handlers. | CComponent |
hasProperty() | Determines whether a property is defined. | CComponent |
init() | Initializes the filter. | CFilter |
raiseEvent() | Raises an event. | CComponent |
受保护的方法
方法 | 描述 | 被定义在 |
---|---|---|
postFilter() | Performs the post-action filtering. | CFilter |
preFilter() | Performs the pre-action filtering. | CFilter |
属性详情
name
属性
public string $name;
name of the filter. It stands for 'XYZ' in the filter method name 'filterXYZ'.
方法详情
create()
方法
public static CInlineFilter create(CController $controller, string $filterName)
| ||
$controller | CController | the controller who hosts the filter methods |
$filterName | string | the filter name |
{return} | CInlineFilter | the created instance |
源码: 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))));
}
Creates an inline filter instance. The creation is based on a string describing the inline method name and action names that the filter shall or shall not apply to.
filter()
方法
public void filter(CFilterChain $filterChain)
| ||
$filterChain | CFilterChain | the filter chain that the filter is on. |
源码: framework/web/filters/CInlineFilter.php#55 (显示)
public function filter($filterChain)
{
$method='filter'.$this->name;
$filterChain->controller->$method($filterChain);
}
Performs the filtering. This method calls the filter method defined in the controller class.