Класс yii\validators\NumberValidator
| Наследование | yii\validators\NumberValidator » yii\validators\Validator » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Доступно с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2/blob/master/framework/validators/NumberValidator.php |
NumberValidator проверяет, что значение атрибута является числом.
Формат числа должен соответствовать регулярному выражению, указанному в $integerPattern или $numberPattern. По желанию, можно настроить свойства $max и $min, чтобы убедиться, что число находится в определенном диапазоне.
Публичные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $attributeNames | массив | Имена атрибутов. | yii\validators\Validator |
| $attributes | массив|строка | Атрибуты, которые должны быть проверены этим валидатором. | yii\validators\Validator |
| $behaviors | yii\base\Behavior[] | Список поведений, прикрепленных к этому компоненту | yii\base\Component |
| $builtInValidators | массив | Список встроенных валидаторов (имя => класс или конфигурация) | yii\validators\Validator |
| $enableClientValidation | булево | Включить проверку на стороне клиента для этого валидатора. | yii\validators\Validator |
| $except | массив|строка | Сценарии, для которых валидатор не должен применяться. | yii\validators\Validator |
| $integerOnly | булево | Значение атрибута может быть только целым числом. | yii\validators\NumberValidator |
| $integerPattern | строка | Регулярное выражение для соответствия целым числам. | yii\validators\NumberValidator |
| $isEmpty | вызов функции | Функция PHP, которая заменяет стандартную реализацию isEmpty(). | yii\validators\Validator |
| $max | целое число|вещественное число | Максимальное значение числа. | yii\validators\NumberValidator |
| $message | строка | Пользовательское сообщение об ошибке. | yii\validators\Validator |
| $min | целое число|вещественное число | Минимальное значение числа. | yii\validators\NumberValidator |
| $numberPattern | строка | Регулярное выражение для соответствия числам. | yii\validators\NumberValidator |
| $on | массив|строка | Сценарии, для которых может быть применен валидатор. | yii\validators\Validator |
| $skipOnEmpty | булево | Пропустить проверку, если значение атрибута равно null или пустая строка. | yii\validators\Validator |
| $skipOnError | булево | Пропустить проверку, если для атрибута уже есть ошибка валидации. | yii\validators\Validator |
| $tooBig | строка | Пользовательское сообщение об ошибке, если значение больше, чем $max. | yii\validators\NumberValidator |
| $tooSmall | строка | Пользовательское сообщение об ошибке, если значение меньше, чем $min. | yii\validators\NumberValidator |
| $when | вызов функции | Функция PHP, результат которой определяет, применяется ли этот валидатор. | yii\validators\Validator |
| $whenClient | строка | Имя JavaScript-функции, результат которой определяет, применяется ли этот валидатор на стороне клиента. | yii\validators\Validator |
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | yii\base\Component |
| __clone() | Этот метод вызывается после создания объекта путём клонирования существующего. | yii\base\Component |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства компонента. | yii\base\Component |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Component |
| __set() | Устанавливает значение свойства компонента. | yii\base\Component |
| __unset() | Устанавливает свойство компонента в null. | yii\base\Component |
| addError() | Добавляет ошибку об указанном атрибуте в объект модели. | yii\validators\Validator |
| attachBehavior() | Присоединяет поведение к этому компоненту. | yii\base\Component |
| attachBehaviors() | Присоединяет список поведений к компоненту. | yii\base\Component |
| behaviors() | Возвращает список поведений, по которым должен действовать этот компонент. | yii\base\Component |
| canGetProperty() | Возвращает значение, указывающее, можно ли считать свойство. | yii\base\Component |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Component |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| clientValidateAttribute() | Возвращает JavaScript, необходимый для выполнения проверки на стороне клиента. | yii\validators\NumberValidator |
| createValidator() | Создаёт объект валидатора. | yii\validators\Validator |
| detachBehavior() | Отсоединяет поведение от компонента. | yii\base\Component |
| detachBehaviors() | Отсоединяет все поведения от компонента. | yii\base\Component |
| ensureBehaviors() | Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. | yii\base\Component |
| getAttributeNames() | Возвращает очищенные имена атрибутов без символа ! в начале | yii\validators\Validator |
| getBehavior() | Возвращает именованный объект поведения. | yii\base\Component |
| getBehaviors() | Возвращает все присоединённые к этому компоненту поведения. | yii\base\Component |
| getClientOptions() | Возвращает параметры проверки на стороне клиента. | yii\validators\NumberValidator |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли какой-либо обработчик, присоединённый к именованному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определён ли метод. | yii\base\Component |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство для этого компонента. | yii\base\Component |
| init() | Инициализирует объект. | yii\validators\NumberValidator |
| isActive() | Возвращает значение, указывающее, активен ли валидатор для данного сценария и атрибута. | yii\validators\Validator |
| isEmpty() | Проверяет, является ли заданное значение пустым. | yii\validators\Validator |
| off() | Отсоединяет существующий обработчик событий от этого компонента. | yii\base\Component |
| on() | Присоединяет обработчик событий к событию. | yii\base\Component |
| trigger() | Вызывает событие. | yii\base\Component |
| validate() | Проверяет заданное значение. | yii\validators\Validator |
| validateAttribute() | Проверяет один атрибут. | yii\validators\NumberValidator |
| validateAttributes() | Проверяет указанный объект. | yii\validators\Validator |
Защищённые методы
| Метод | Описание | Определено в |
|---|---|---|
| formatMessage() | Форматирует сообщение с использованием I18N или простой strtr, если \Yii::$app недоступен. | yii\validators\Validator |
| validateValue() | Проверяет значение. | yii\validators\NumberValidator |
Подробное описание свойств
$integerOnly общественное свойство
Указывает, может ли значение атрибута быть только целым числом. По умолчанию false.
public boolean $integerOnly = false
$integerPattern общественное свойство
Регулярное выражение для соответствия целых чисел.
public string $integerPattern = '/^\s*[+-]?\d+\s*$/'
$max общественное свойство
Верхний предел числа. По умолчанию null, что означает отсутствие верхнего предела.
См. также $tooBig для настраиваемого сообщения, используемого, когда число слишком большое.
public integer|float $max = null
$min общественное свойство
Нижний предел числа. По умолчанию null, что означает отсутствие нижнего предела.
См. также $tooSmall для настраиваемого сообщения, используемого, когда число слишком маленькое.
public integer|float $min = null
$numberPattern общественное свойство
Регулярное выражение для соответствия числам. По умолчанию соответствует числам с плавающей точкой с необязательной экспоненциальной частью (например, -1.23e-10).
public string $numberPattern = '/^\s*[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?\s*$/'
$tooBig общественное свойство
Пользовательское сообщение об ошибке, используемое, когда значение больше, чем $max.
public string $tooBig = null
$tooSmall общественное свойство
Пользовательское сообщение об ошибке, используемое, когда значение меньше, чем $min.
public string $tooSmall = null
Подробное описание методов
clientValidateAttribute() public method
Возвращает JavaScript, необходимый для выполнения проверки на стороне клиента.
Вызывает getClientOptions(), чтобы сгенерировать массив параметров для проверки на стороне клиента.
Вы можете переопределить этот метод, чтобы вернуть код JavaScript-валидации, если валидатор поддерживает проверку на стороне клиента.
Следующие переменные JavaScript предварительно определены и могут быть использованы в коде валидации:
-
attribute: объект, описывающий атрибут, который проверяется. -
value: значение, которое проверяется. -
messages: массив, используемый для хранения сообщений об ошибках валидации для атрибута. -
deferred: массив, используемый для хранения отложенных объектов для асинхронной проверки -
$form: объект jQuery, содержащий элемент формы
Объект attribute содержит следующие свойства:
-
id: уникальный идентификатор, определяющий атрибут (например, "loginform-username") в форме -
name: имя атрибута или выражение (например, "[0]content" для табличных данных) -
container: селектор jQuery контейнера поля ввода -
input: селектор jQuery поля ввода в контексте формы -
error: селектор jQuery тега ошибки в контексте контейнера -
status: состояние поля ввода, 0: пустое, не введено ранее, 1: валидное, 2: ожидание валидации, 3: валидация
| public string|null clientValidateAttribute ( $model, $attribute, $view ) | ||
|---|---|---|
| $model | yii\base\Model |
Модель данных, которая проверяется |
| $attribute | string |
Имя атрибута, который проверяется. |
| $view | yii\web\View |
Объект представления, который будет использован для отображения представлений или файлов представлений, содержащих форму модели с применённым данным валидатором. |
| return | string|null |
Скрипт проверки на стороне клиента. Null, если валидатор не поддерживает проверку на стороне клиента. |
getClientOptions() public method
Возвращает параметры проверки на стороне клиента.
Этот метод обычно вызывается из clientValidateAttribute(). Вы можете переопределить этот метод, чтобы изменить параметры, которые будут переданы проверке на стороне клиента.
| public array getClientOptions ( $model, $attribute ) | ||
|---|---|---|
| $model | yii\base\Model |
Модель, которая проверяется |
| $attribute | string |
Имя проверяемого атрибута |
| return | array |
Параметры проверки на стороне клиента |
init() public method
Инициализирует объект.
Этот метод вызывается в конце конструктора после инициализации объекта с заданной конфигурацией.
| public void init ( ) |
|---|
validateAttribute() public method
Проверяет отдельный атрибут.
Подклассы должны реализовать этот метод, чтобы предоставить фактическую логику проверки.
| public void validateAttribute ( $model, $attribute ) | ||
|---|---|---|
| $model | yii\base\Model |
Модель данных, которая проверяется |
| $attribute | string |
Имя атрибута, который проверяется. |
validateValue() protected method
Проверяет значение.
Класс валидатора может реализовать этот метод для поддержки проверки данных вне контекста модели данных.
| protected array|null validateValue ( $value ) | ||
|---|---|---|
| $value | mixed |
Значение данных, которое проверяется. |
| return | array|null |
Сообщение об ошибке и параметры, которые должны быть вставлены в сообщение об ошибке. Null должен быть возвращён, если данные валидны. |
| throws | yii\base\NotSupportedException |
если валидатор не поддерживает проверку данных без модели |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-validators-numbervalidator.html