CFilterValidator
| Пакет | system.validators |
|---|---|
| Наследование | класс CFilterValidator » CValidator » CComponent |
| С версии | 1.0 |
| Исходный код | framework/validators/CFilterValidator.php |
CFilterValidator преобразует данные, которые проверяются, на основе фильтра.
CFilterValidator фактически не является валидатором, а процессором данных. Он вызывает указанный метод фильтра для обработки значения атрибута и сохраняет обработанное значение обратно в атрибут. Метод фильтра должен соответствовать следующему подписям:
Для указания метода фильтра установите свойство filter в имя функции.
CFilterValidator фактически не является валидатором, а процессором данных. Он вызывает указанный метод фильтра для обработки значения атрибута и сохраняет обработанное значение обратно в атрибут. Метод фильтра должен соответствовать следующему подписям:
function foo($value) {...return $newValue; }
Многие встроенные функции PHP соответствуют этой подписи (например, trim). Для указания метода фильтра установите свойство filter в имя функции.
Общедоступные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| attributes | массив | список атрибутов, которые будут проверены. | CValidator |
| builtInValidators | массив | список встроенных валидаторов (имя=>класс) | CValidator |
| enableClientValidation | логическое значение | выполнять проверку на стороне клиента. | CValidator |
| except | массив | список сценариев, для которых валидатор не должен применяться. | CValidator |
| filter | callback | метод фильтра | CFilterValidator |
| message | строка | пользовательское сообщение об ошибке. | CValidator |
| on | массив | список сценариев, для которых должен применяться валидатор. | CValidator |
| safe | логическое значение | атрибуты, перечисленные с этим валидатором, должны считаться безопасными для массового назначения. | CValidator |
| skipOnError | логическое значение | пропустить эту проверку правила, если уже есть ошибка проверки для текущего атрибута. | CValidator |
Общедоступные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | CComponent |
| __get() | Возвращает значение свойства, список обработчиков событий или поведение на основе его имени. | CComponent |
| __isset() | Проверяет, является ли значение свойства null. | CComponent |
| __set() | Устанавливает значение свойства компонента. | CComponent |
| __unset() | Устанавливает свойство компонента в null. | CComponent |
| applyTo() | Возвращает значение, указывающее, применяется ли валидатор к указанному сценарию. | CValidator |
| asa() | Возвращает объект поведения с заданным именем. | CComponent |
| attachBehavior() | Прикрепляет поведение к компоненту. | CComponent |
| attachBehaviors() | Прикрепляет список поведений к компоненту. | CComponent |
| attachEventHandler() | Прикрепляет обработчик событий к событию. | CComponent |
| canGetProperty() | Определяет, можно ли прочитать свойство. | CComponent |
| canSetProperty() | Определяет, можно ли установить свойство. | CComponent |
| clientValidateAttribute() | Возвращает JavaScript, необходимый для проверки на стороне клиента. | CValidator |
| createValidator() | Создает объект валидатора. | CValidator |
| detachBehavior() | Открепляет поведение от компонента. | CComponent |
| detachBehaviors() | Открепляет все поведения от компонента. | CComponent |
| detachEventHandler() | Открепляет существующий обработчик событий. | CComponent |
| disableBehavior() | Отключает присоединенное поведение. | CComponent |
| disableBehaviors() | Отключает все присоединенные к этому компоненту поведения. | CComponent |
| enableBehavior() | Включает присоединенное поведение. | CComponent |
| enableBehaviors() | Включает все присоединенные к этому компоненту поведения. | CComponent |
| evaluateExpression() | Вычисляет PHP-выражение или обратный вызов в контексте этого компонента. | CComponent |
| getEventHandlers() | Возвращает список присоединенных обработчиков событий для события. | CComponent |
| hasEvent() | Определяет, определено ли событие. | CComponent |
| hasEventHandler() | Проверяет, имеет ли именованное событие прикрепленные обработчики. | CComponent |
| hasProperty() | Определяет, определено ли свойство. | CComponent |
| raiseEvent() | Вызывает событие. | CComponent |
| validate() | Проверяет указанный объект. | CValidator |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| addError() | Добавляет ошибку об указанном атрибуте в активную запись. | CValidator |
| isEmpty() | Проверяет, является ли заданное значение пустым. | CValidator |
| validateAttribute() | Проверяет атрибут объекта. | CFilterValidator |
Подробное описание свойства
filter свойство
public callback $filter;
метод фильтра
Подробное описание метода
validateAttribute() метод
protected void validateAttribute(CModel $object, string $attribute) | ||
| $object | CModel | валидируемый объект |
| $attribute | строка | валидируемый атрибут |
Исходный код: framework/validators/CFilterValidator.php#43 (показать)
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));
}
Проверяет атрибут объекта. Если есть ошибка, сообщение об ошибке добавляется к объекту.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CFilterValidator