On this page
CFilterValidator
| Package | system.validators |
|---|---|
| Inheritance | class CFilterValidator » CValidator » CComponent |
| Since | 1.0 |
| Source Code | framework/validators/CFilterValidator.php |
CFilterValidator transforms the data being validated based on a filter.
CFilterValidator is actually not a validator but a data processor. It invokes the specified filter method to process the attribute value and save the processed value back to the attribute. The filter method must follow the following signature:
To specify the filter method, set filter property to be the function name.
CFilterValidator is actually not a validator but a data processor. It invokes the specified filter method to process the attribute value and save the processed value back to the attribute. The filter method must follow the following signature:
function foo($value) {...return $newValue; }
Many PHP 'built in' functions qualify this signature (e.g. trim). To specify the filter method, set filter property to be the function name.
Public Properties
| Property | Type | Description | Defined By |
|---|---|---|---|
| attributes | array | list of attributes to be validated. | CValidator |
| builtInValidators | array | list of built-in validators (name=>class) | CValidator |
| enableClientValidation | boolean | whether to perform client-side validation. | CValidator |
| except | array | list of scenarios that the validator should not be applied to. | CValidator |
| filter | callback | the filter method | CFilterValidator |
| message | string | the user-defined error message. | CValidator |
| on | array | list of scenarios that the validator should be applied. | CValidator |
| safe | boolean | whether attributes listed with this validator should be considered safe for massive assignment. | CValidator |
| skipOnError | boolean | whether this validation rule should be skipped when there is already a validation error for the current attribute. | CValidator |
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __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 |
| applyTo() | Returns a value indicating whether the validator applies to the specified scenario. | CValidator |
| 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 |
| clientValidateAttribute() | Returns the JavaScript needed for performing client-side validation. | CValidator |
| createValidator() | Creates a validator object. | CValidator |
| 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 |
| 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 |
| raiseEvent() | Raises an event. | CComponent |
| validate() | Validates the specified object. | CValidator |
Protected Methods
| Method | Description | Defined By |
|---|---|---|
| addError() | Adds an error about the specified attribute to the active record. | CValidator |
| isEmpty() | Checks if the given value is empty. | CValidator |
| validateAttribute() | Validates the attribute of the object. | CFilterValidator |
Property Details
filter property
public callback $filter;
the filter method
Method Details
validateAttribute() method
|
||
| $object | CModel | the object being validated |
| $attribute | string | the attribute being validated |
Source Code: framework/validators/CFilterValidator.php#43 (show)
protected function validateAttribute($object,$attribute)
{
if($this->filter===null || !is_callable($this->filter))
throw new CException(Yii::t('yii','The "filter" property must be specified with a valid callback.'));
$object->$attribute=call_user_func_array($this->filter,array($object->$attribute));
}
Validates the attribute of the object. If there is any error, the error message is added to the object.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CFilterValidator