Spec-Zone.ru › CakePHP 3.2

Класс Validator

Объект Validator encapsulates все методы, связанные с валидацией данных для модели. Он также предоставляет API для динамического изменения правил валидации для каждого поля модели.

Реализует ArrayAccess для удобной модификации правил в наборе

Cake\Validation\Validator implements ArrayAccess, IteratorAggregate, Countable
Пространство имён: Cake\Validation
Ссылка: http://book.cakephp.org/3.0/ru/core-libraries/validation.html
Расположение: Validation/Validator.php

Краткое описание констант

  • string

    NESTED
    '_nested'

Краткое описание свойств

  • $_allowEmptyMessages protected
    array

    Содержит сообщения валидации, связанные с проверкой пустоты для каждого соответствующего поля.

  • $_fields protected
    array
    Массив объектов ValidationSet.
  • $_presenceMessages protected
    array

    Содержит сообщения валидации, связанные с проверкой наличия для каждого соответствующего поля.

  • $_providers protected
    array

    Ассоциативный массив объектов или классов, содержащих методы, используемые для валидации.

  • $_useI18n protected
    boolean
    Использовать ли функции I18n для перевода сообщений об ошибках по умолчанию.

Краткое описание методов

  • __construct() public
    Конструктор
  • __debugInfo() public
    Получить печатную версию этого объекта.
  • _canBeEmpty() protected
    Возвращает, может ли поле быть пустым в соответствии с allowEmpty
  • _checkPresence() protected

    Возвращает false, если какая-либо валидация для переданного набора правил должна быть остановлена из-за отсутствия поля в массиве данных

  • _fieldIsEmpty() protected
    Возвращает true, если поле пусто в переданном массиве данных
  • _processRules() protected

    Итерируется по каждому правилу в наборе валидации и собирает ошибки, возникшие в результате их выполнения

  • add() public

    Добавляет новое правило к набору правил поля. Если второй аргумент является массивом, то список правил для поля будет заменен вторым аргументом, а третий аргумент будет проигнорирован.

  • addNested() public
    Добавляет вложенный валидатор.
  • addNestedMany() public
    Добавляет вложенный валидатор.
  • allowEmpty() public
    Разрешает поле быть пустым.
  • alphaNumeric() public
    Добавляет правило alphanumeric к полю.
  • ascii() public
    Добавляет правило валидации, чтобы убедиться, что поле содержит только байты ASCII
  • boolean() public
    Добавляет правило валидации boolean к полю.
  • containsNonAlphaNumeric() public
    Добавляет правило проверки, содержит ли поле не буквенно-цифровые символы.
  • count() public
    Возвращает количество полей, имеющих правила валидации
  • creditCard() public
    Добавляет правило валидации для номера кредитной карты.
  • date() public
    Добавляет правило валидации формата даты к полю.
  • dateTime() public
    Добавляет правило валидации формата даты и времени к полю.
  • decimal() public
    Добавляет правило валидации десятичного числа к полю.
  • email() public
    Добавляет правило валидации адреса электронной почты к полю.
  • equals() public
    Добавляет правило сравнения "равно" к полю.
  • errors() public

    Возвращает массив полей, которые не прошли валидацию. Для текущей модели. Этот метод фактически выполнит правила валидации над данными, а не просто вернёт сообщения.

  • field() public

    Возвращает объект ValidationSet, содержащий все правила валидации для поля. Если в качестве второго аргумента передано ValidationSet, он заменит любой другой определённый ранее набор правил.

  • getIterator() public
    Возвращает итератор для каждого из полей, которые необходимо валидировать
  • greaterThan() public
    Добавляет правило сравнения "больше чем" к полю.
  • greaterThanOrEqual() public
    Добавляет правило сравнения "больше или равно" к полю.
  • hasAtLeast() public

    Добавляет правило валидации, чтобы убедиться, что поле является массивом, содержащим по крайней мере указанное количество элементов.

  • hasAtMost() public

    Добавляет правило валидации, чтобы убедиться, что поле является массивом, содержащим не более указанного количества элементов.

  • hasField() public
    Проверяет, содержит ли валидатор какие-либо правила для данного поля.
  • inList() public
    Добавляет правило валидации, чтобы убедиться, что значение поля находится в белом списке.
  • integer() public
    Добавляет правило валидации, чтобы убедиться, что поле имеет целочисленное значение.
  • ip() public
    Добавляет правило валидации IP к полю.
  • ipv4() public
    Добавляет правило валидации IPv4 к полю.
  • ipv6() public
    Добавляет правило валидации IPv6 к полю.
  • isArray() public
    Добавляет правило валидации, чтобы убедиться, что поле содержит массив.
  • isEmptyAllowed() public

    Возвращает, разрешено ли поле оставлять пустым для новой или уже существующей записи.

  • isPresenceRequired() public

    Возвращает, обязательно ли поле должно быть указано для новой или уже существующей записи.

  • latLong() public
    Добавляет правило валидации, чтобы убедиться, что поле является кортежем широты/долготы.
  • latitude() public
    Добавляет правило валидации, чтобы убедиться, что поле является широтой.
  • lengthBetween() public
    Добавляет правило, которое гарантирует, что длина строки находится в заданном диапазоне.
  • lessThan() public
    Добавляет правило сравнения "меньше чем" к полю.
  • lessThanOrEqual() public
    Добавляет правило сравнения "меньше или равно" к полю.
  • localizedTime() public
    Добавляет правило валидации формата локального времени, даты или даты и времени к полю.
  • longitude() public
    Добавляет правило валидации, чтобы убедиться, что поле является долготой.
  • maxLength() public
    Добавляет правило валидации длины строки к полю.
  • minLength() public
    Добавляет правило валидации длины строки к полю.
  • multipleOptions() public
    Добавляет правило валидации для множественного выбора. Сравнение по умолчанию чувствительно к регистру.
  • naturalNumber() public
    Добавляет правило валидации для натурального числа к полю.
  • nonNegativeInteger() public
    Добавляет правило валидации, чтобы убедиться, что поле является неотрицательным целым числом.
  • notBlank() public
    Добавляет правило notBlank к полю.
  • notEmpty() public
    Устанавливает требование к полю, чтобы оно не было пустым.
  • notEquals() public
    Добавляет правило сравнения "не равно" к полю.
  • numeric() public
    Добавляет правило валидации числового значения к полю.
  • offsetExists() public
    Возвращает, определён ли набор правил для поля или нет
  • offsetGet() public
    Возвращает набор правил для поля
  • offsetSet() public
    Устанавливает набор правил для поля
  • offsetUnset() public
    Удаляет набор правил для поля
END_OF_DOCUMENT_MARKER
  • provider() public

    Ассоциирует объект с именем, чтобы его можно было использовать в качестве поставщика. Поставщики — это объекты или имена классов, которые могут содержать методы, используемые во время проверки, для определения того, может ли быть применено правило проверки. Все методы проверки, при вызове, получат полный список поставщиков, хранящихся в этом валидаторе.

  • providers() public
    Получить список поставщиков в этом валидаторе.
  • range() public
    Добавляет правило проверки, чтобы убедиться, что поле находится в числовом диапазоне.
  • remove() public
    Удаляет правило из набора по его имени.
  • requirePresence() public
    Устанавливает, требуется ли наличие поля в массиве данных.
  • sameAs() public
    Добавляет правило для сравнения двух полей друг с другом.
  • time() public
    Добавляет правило проверки формата времени для поля.
  • uploadedFile() public
    Добавляет правило проверки, чтобы убедиться, что поле является загруженным файлом.
  • url() public
    Добавляет правило проверки, чтобы убедиться, что поле является URL-адресом.
  • urlWithProtocol() public
    Добавляет правило проверки, чтобы убедиться, что поле является URL-адресом.
  • utf8() public
    Добавляет правило проверки, чтобы убедиться, что поле содержит только байты BMP utf8.
  • utf8Extended() public
    Добавляет правило проверки, чтобы убедиться, что поле содержит только байты utf8.
  • uuid() public
    Добавляет правило проверки, чтобы убедиться, что поле является UUID.

Подробное описание метода

__construct()source public

__construct( )

Конструктор

__debugInfo()source public

__debugInfo( )

Получить печатную версию этого объекта.

Возвращает

array

_canBeEmpty()source protected

_canBeEmpty( Cake\Validation\ValidationSet $field , array $context )

Возвращает, может ли поле быть пустым в соответствии с allowEmpty

Параметры

Cake\Validation\ValidationSet $field
набор правил для поля
массив $context
список значений данных, содержащий контекст валидации.

Возвращает

boolean

_checkPresence()source protected

_checkPresence( Cake\Validation\ValidationSet $field , array $context )

Возвращает false, если любая проверка для переданного набора правил должна быть остановлена из-за отсутствия поля в массиве данных

Параметры

Cake\Validation\ValidationSet $field
Набор правил для поля.
массив $context
Список значений данных, содержащий контекст валидации.

Возвращает

boolean

_fieldIsEmpty()source protected

_fieldIsEmpty( mixed $data )

Возвращает true, если поле пусто в переданном массиве данных

Параметры

смешанный $data
значение для проверки

Возвращает

boolean

_processRules()source protected

_processRules( string $field , Cake\Validation\ValidationSet $rules , array $data , boolean $newRecord )

Итерирует по каждому правилу в наборе валидации и собирает ошибки, возникшие в результате их выполнения

Параметры

строка $field
Имя поля, которое обрабатывается
Cake\Validation\ValidationSet $rules
список правил для поля
массив $data
полные данные, переданные валидатору
boolean $newRecord
является ли это новой записью или существующей

Возвращает

array

add()source public

add( string $field , array|string $name , array|Cake\Validation\ValidationRule $rule [] )

Добавляет новое правило к набору правил поля. Если второй аргумент является массивом, список правил для поля будет заменён вторым аргументом, и третий аргумент будет проигнорирован.

Пример:

$validator
         ->add('title', 'required', ['rule' => 'notBlank'])
         ->add('user_id', 'valid', ['rule' => 'numeric', 'message' => 'Invalid User'])

     $validator->add('password', [
         'size' => ['rule' => ['lengthBetween', 8, 20]],
         'hasSpecialCharacter' => ['rule' => 'validateSpecialchar', 'message' => 'not valid']
     ]);

Параметры

строка $field
Имя поля, из которого будет удалено правило
массив|строка $name
Псевдоним для одиночного правила или массива множественных правил
массив|Cake\Validation\ValidationRule $rule optional []
правило для добавления

Возвращает


$this

addNested()source public

addNested( string $field , Cake\Validation\Validator $validator )

Добавляет вложенный валидатор.

Вложенные валидаторы позволяют определять валидаторы для массивов. Например, вложенные валидаторы идеально подходят, когда вам нужно валидировать поддокумент или сложный тип массива.

Этот метод предполагает, что поддокумент имеет 1:1 отношение с родителем.

Поставщики родительского валидатора будут синхронизированы с вложенным валидатором при проверке ошибок. Это гарантирует, что все поставщики правил валидации, подключенные в родительском валидаторе, будут иметь те же значения во вложенном валидаторе при оценке правил.

Параметры

строка $field
Корневое поле для вложенного валидатора.
Cake\Validation\Validator $validator
Вложенный валидатор.

Возвращает


$this

addNestedMany()source public

addNestedMany( string $field , Cake\Validation\Validator $validator )

Добавляет вложенный валидатор.

Вложенные валидаторы позволяют определять валидаторы для массивов. Например, вложенные валидаторы идеально подходят, когда вам нужно валидировать много похожих поддокументов или сложные типы массивов.

Этот метод предполагает, что поддокумент имеет отношение 1:N с родителем.

Поставщики родительского валидатора будут синхронизированы с вложенным валидатором при проверке ошибок. Это гарантирует, что все поставщики правил валидации, подключенные в родительском валидаторе, будут иметь те же значения во вложенном валидаторе при оценке правил.

Параметры

строка $field
Корневое поле для вложенного валидатора.
Cake\Validation\Validator $validator
Вложенный валидатор.

Возвращает


$this

allowEmpty()source public

allowEmpty( string $field , boolean|string|callable $when true , string|null $message null )

Разрешает поле быть пустым.

Это противоположно notEmpty(), которое требует, чтобы поле не было пустым. Используя $mode, равный 'create' или 'update', вы можете разрешить поля быть пустыми при первом создании записей или при их обновлении.

Пример:

$validator->allowEmpty('email'); // Email can be empty
$validator->allowEmpty('email', 'create'); // Email can be empty on create
$validator->allowEmpty('email', 'update'); // Email can be empty on update

Возможна условная возможность пустоты поля путём передачи обратного вызова в качестве второго аргумента. Обратный вызов получит массив контекста валидации в качестве аргумента:

$validator->allowEmpty('email', function ($context) {
 return !$context['newRecord'] || $context['data']['role'] === 'admin';
});

Этот метод правильно обнаружит пустые загрузки файлов и поля даты/времени/datetime.

Поскольку этот и notEmpty() изменяют один и тот же внутренний статус, последний вызванный метод будет иметь приоритет.

Параметры

строка $field
имя поля
boolean|string|callable $when optional true

Указывает, когда поле разрешается быть пустым. Допустимые значения — true (всегда), 'create', 'update'. Если передан вызываемый объект, поле разрешается быть пустым только когда вызываемый объект возвращает true.

строка|null $message optional null
Сообщение, отображаемое, если поле не пустое

Возвращает


$this

alphaNumeric()source public

alphaNumeric( string $field , string|null $message null , string|callable|null $when null )

Добавить правило проверки на алфавитно-цифровые символы для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::alphaNumeric()

ascii()source public

ascii( string $field , string|null $message null , string|callable|null $when null )

Добавить правило проверки, чтобы убедиться, что поле содержит только символы ASCII.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::ascii()

boolean()source public

boolean( string $field , string|null $message null , string|callable|null $when null )

Добавить правило проверки на булево значение для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::boolean()

containsNonAlphaNumeric()source public

containsNonAlphaNumeric( string $field , integer $limit 1 , string|null $message null , string|callable|null $when null )

Добавить правило для проверки, содержит ли поле не алфавитно-цифровые символы.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число $limit необязательно 1
Минимальное количество не алфавитно-цифровых символов.
строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::containsNonAlphaNumeric()

count()source public

count( )

Возвращает количество полей, имеющих правила валидации.

Возвращаемое значение

целое число

Реализация

Countable::count()

creditCard()source public

creditCard( string $field , string $type 'all' , string|null $message null , string|callable|null $when null )

Добавить правило проверки номера кредитной карты для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка $type необязательно 'all'

Тип карт, которые нужно разрешить. По умолчанию 'all'. Также можно указать массив допустимых типов карт. Например ['mastercard', 'visa', 'amex']

строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::cc()

date()source public

date( string $field , array $formats ['ymd'] , string|null $message null , string|callable|null $when null )

Добавить правило проверки формата даты для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
массив $formats необязательно ['ymd']
Список допустимых форматов даты.
строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::date()

dateTime()source public

dateTime( string $field , array $formats ['ymd'] , string|null $message null , string|callable|null $when null )

Добавить правило проверки формата даты и времени для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
массив $formats необязательно ['ymd']
Список допустимых форматов даты.
строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::datetime()

decimal()source public

decimal( string $field , integer|null $places null , string|null $message null , string|callable|null $when null )

Добавить правило проверки на десятичное число для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число|null $places необязательно null
Количество знаков после запятой.
строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::decimal()

email()source public

email( string $field , boolean $checkMX false , string|null $message null , string|callable|null $when null )

Добавить правило проверки электронной почты для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
логическое значение $checkMX необязательно false
Проверять ли MX-записи.
строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::email()

equals()source public

equals( string $field , integer|float $value , string|null $message null , string|callable|null $when null )

Добавить правило сравнения "равно" для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число|вещественное число $value
Значение, с которым должно совпадать пользовательское значение.
строка|null $message необязательно null
Сообщение об ошибке при нарушении правила.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило должно быть применено.

Возвращаемое значение


$this

См. также

\Cake\Validation\Validation::comparison()
END_OF_DOCUMENT_MARKER

errors()source public

errors( array $data , boolean $newRecord true )

Возвращает массив полей, которые не прошли валидацию. На текущей модели. Этот метод фактически выполнит правила валидации данных, а не просто вернёт сообщения.

Параметры

массив $data
Данные, которые необходимо проверить на ошибки
булево $newRecord необязательно true
указывает, являются ли данные, подлежащие валидации, новыми или обновляемыми.

Возвращает

массив
Массив недопустимых полей

field()source public

field( string $name , Cake\Validation\ValidationSet $set null )

Возвращает объект ValidationSet, содержащий все правила валидации для поля. Если в качестве второго аргумента передать ValidationSet, он заменит любой другой набор правил, определённый ранее.

Параметры

строка $name
[необязательно] Имя поля для извлечения.
Cake\Validation\ValidationSet $set необязательно null
Набор правил для поля

Возвращает

Cake\Validation\ValidationSet

getIterator()source public

getIterator( )

Возвращает итератор для каждого из полей, подлежащих валидации.

Возвращает

ArrayIterator

Реализация

IteratorAggregate::getIterator()

greaterThan()source public

greaterThan( string $field , integer|float $value , string|null $message null , string|callable|null $when null )

Добавляет правило сравнения больше чем к полю.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число|число с плавающей точкой $value
Значение, которое пользовательские данные должны быть больше.
строка|null $message необязательно null
Сообщение об ошибке, когда правило не выполняется.
строка|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::comparison()

greaterThanOrEqual()source public

greaterThanOrEqual( string $field , integer|float $value , string|null $message null , string|callable|null $when null )

Добавляет правило сравнения больше или равно к полю.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число|число с плавающей точкой $value
Значение, которое пользовательские данные должны быть больше или равны.
строка|null $message необязательно null
Сообщение об ошибке, когда правило не выполняется.
строка|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::comparison()

hasAtLeast()source public

hasAtLeast( string $field , integer $count , string|null $message null , string|callable|null $when null )

Добавляет правило валидации, чтобы убедиться, что поле является массивом, содержащим не менее указанного количества элементов.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число $count
Количество элементов, которые массив должен содержать как минимум.
строка|null $message необязательно null
Сообщение об ошибке, когда правило не выполняется.
строка|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::numElements()

hasAtMost()source public

hasAtMost( string $field , integer $count , string|null $message null , string|callable|null $when null )

Добавляет правило валидации, чтобы убедиться, что поле является массивом, содержащим не более указанного количества элементов.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число $count
Максимальное количество элементов, которые поле должно содержать.
строка|null $message необязательно null
Сообщение об ошибке, когда правило не выполняется.
строка|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::numElements()

hasField()source public

hasField( string $name )

Проверяет, содержит ли валидатор правила для данного поля.

Параметры

строка $name
Имя поля для проверки.

Возвращает

булево

inList()source public

inList( string $field , array $list , string|null $message null , string|callable|null $when null )

Добавляет правило валидации, чтобы убедиться, что значение поля находится в белом списке.

Параметры

строка $field
Поле, к которому нужно применить правило.
массив $list
Список допустимых вариантов.
строка|null $message необязательно null
Сообщение об ошибке, когда правило не выполняется.
строка|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::inList()

integer()source public

integer( string $field , string|null $message null , string|callable|null $when null )

Добавляет правило валидации, чтобы убедиться, что поле имеет целочисленное значение.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, когда правило не выполняется.
строка|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::isInteger()

ip()source public

ip( string $field , string|null $message null , string|callable|null $when null )

Добавляет правило валидации IP-адреса к полю.

Это правило примет как IPv4, так и IPv6 адреса.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, когда правило не выполняется.
строка|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::ip()

ipv4()source public

ipv4( string $field , string|null $message null , string|callable|null $when null )

Добавляет правило валидации IPv4 к полю.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, когда правило не выполняется.
строка|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::ip()
END_OF_DOCUMENT_MARKER

ipv6()source public

ipv6( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации IPv6 для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке при невыполнении правила.
строка|вызов|null $when необязательно null

Либо 'create', либо 'update', либо вызов, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::ip()

isArray()source public

isArray( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации, чтобы убедиться, что поле содержит массив.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке при невыполнении правила.
строка|вызов|null $when необязательно null

Либо 'create', либо 'update', либо вызов, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

isEmptyAllowed()source public

isEmptyAllowed( string $field , boolean $newRecord )

Возвращает, разрешено ли поле оставлять пустым для новой или уже существующей записи.

Параметры

строка $field
Имя поля.
булево $newRecord
указывает, являются ли данные для проверки новыми или подлежат обновлению.

Возвращает

boolean

isPresenceRequired()source public

isPresenceRequired( string $field , boolean $newRecord )

Возвращает, разрешено ли опустить поле для новой или уже существующей записи.

Параметры

строка $field
Имя поля.
булево $newRecord
указывает, являются ли данные для проверки новыми или подлежат обновлению.

Возвращает

boolean

latLong()source public

latLong( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации, чтобы убедиться, что поле является кортежем широты/долготы.

Например: <lat>, <lng>

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке при невыполнении правила.
строка|вызов|null $when необязательно null

Либо 'create', либо 'update', либо вызов, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::uuid()

latitude()source public

latitude( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации, чтобы убедиться, что поле является широтой.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке при невыполнении правила.
строка|вызов|null $when необязательно null

Либо 'create', либо 'update', либо вызов, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::latitude()

lengthBetween()source public

lengthBetween( string $field , array $range , string|null $message null , string|callable|null $when null )

Добавить правило, которое гарантирует, что длина строки находится в заданном диапазоне.

Параметры

строка $field
Поле, к которому нужно применить правило.
массив $range
Включительно минимальная и максимальная длина, разрешённые для поля.
строка|null $message необязательно null
Сообщение об ошибке при невыполнении правила.
строка|вызов|null $when необязательно null

Либо 'create', либо 'update', либо вызов, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::alphaNumeric()

lessThan()source public

lessThan( string $field , integer|float $value , string|null $message null , string|callable|null $when null )

Добавить правило сравнения "меньше чем" для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число|число с плавающей точкой $value
Значение, которое данные пользователя должны быть меньше.
строка|null $message необязательно null
Сообщение об ошибке при невыполнении правила.
строка|вызов|null $when необязательно null

Либо 'create', либо 'update', либо вызов, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::comparison()

lessThanOrEqual()source public

lessThanOrEqual( string $field , integer|float $value , string|null $message null , string|callable|null $when null )

Добавить правило сравнения "меньше или равно" для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число|число с плавающей точкой $value
Значение, которому данные пользователя должны быть меньше или равны.
строка|null $message необязательно null
Сообщение об ошибке при невыполнении правила.
строка|вызов|null $when необязательно null

Либо 'create', либо 'update', либо вызов, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::comparison()

localizedTime()source public

localizedTime( string $field , string $type 'datetime' , string|null $message null , string|callable|null $when null )

Добавить правило валидации локализованного формата времени, даты или даты и времени для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка $type необязательно 'datetime'
Тип парсера, один из 'date', 'time' и 'datetime'
строка|null $message необязательно null
Сообщение об ошибке при невыполнении правила.
строка|вызов|null $when необязательно null

Либо 'create', либо 'update', либо вызов, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::localizedTime()

longitude()source public

longitude( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации, чтобы убедиться, что поле является долготой.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке при невыполнении правила.
строка|вызов|null $when необязательно null

Либо 'create', либо 'update', либо вызов, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::longitude()
END_OF_DOCUMENT_MARKER

maxLength()source public

maxLength( string $field , integer $max , string|null $message null , string|callable|null $when null )

Добавить правило валидации длины строки для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число $max
Максимальная длина, разрешенная для поля.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update', или вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::maxLength()

minLength()source public

minLength( string $field , integer $min , string|null $message null , string|callable|null $when null )

Добавить правило валидации длины строки для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число $min
Минимальная требуемая длина.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update', или вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::minLength()

multipleOptions()source public

multipleOptions( string $field , array $options [] , string|null $message null , string|callable|null $when null )

Добавить правило валидации для множественного выбора. Сравнение по умолчанию регистрозависимое.

Параметры

строка $field
Поле, к которому нужно применить правило.
массив $options необязательно []

Параметры валидатора. Включает параметры, определенные в \Cake\Validation\Validation::multiple(), и параметр caseInsensitive.

строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update', или вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::multiple()

naturalNumber()source public

naturalNumber( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации для натурального числа для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update', или вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::naturalNumber()

nonNegativeInteger()source public

nonNegativeInteger( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации, чтобы убедиться, что поле является неотрицательным целым числом.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update', или вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::naturalNumber()

notBlank()source public

notBlank( string $field , string|null $message null , string|callable|null $when null )

Добавить правило notBlank к полю.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update', или вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::notBlank()

notEmpty()source public

notEmpty( string $field , string|null $message null , boolean|string|callable $when false )

Устанавливает требование для поля, чтобы оно не было пустым.

Это противоположно allowEmpty(), которое позволяет полю быть пустым. Используя $mode равным 'create' или 'update', вы можете сделать поля обязательными при первом создании записей или при их обновлении.

Пример:

$message = 'This field cannot be empty';
$validator->notEmpty('email'); // Email cannot be empty
$validator->notEmpty('email', $message, 'create'); // Email can be empty on update
$validator->notEmpty('email', $message, 'update'); // Email can be empty on create

Возможна условная запрет пустоты поля, передав коллбек в качестве третьего аргумента. Коллбек получит массив контекста валидации в качестве аргумента:

$validator->notEmpty('email', 'Email is required', function ($context) {
  return $context['newRecord'] && $context['data']['role'] !== 'admin';
});

Поскольку этот и allowEmpty() изменяют одно и то же внутреннее состояние, последний вызванный метод будет иметь приоритет.

Параметры

строка $field
имя поля
строка|null $message необязательно null
Сообщение, которое будет показано, если поле не
boolean|строка|вызываемый объект $when необязательно false

Указывает, когда полю запрещено быть пустым. Допустимые значения: true (всегда), 'create', 'update'. Если передан вызываемый объект, поле будет пустым только тогда, когда коллбек возвращает false.

Возвращает


$this

notEquals()source public

notEquals( string $field , integer|float $value , string|null $message null , string|callable|null $when null )

Добавить правило сравнения, отличное от значения, для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
целое число|вещественное число $value
Значение, которому данные пользователя не должны быть равны.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update', или вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::comparison()

numeric()source public

numeric( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации для числового значения для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызываемый объект|null $when необязательно null

Значение 'create' или 'update', или вызываемый объект, возвращающий true, когда правило валидации должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::numeric()

offsetExists()source public

offsetExists( string $field )

Возвращает, определено ли правило набора для поля или нет

Параметры

строка $field
имя поля для проверки

Возвращает

boolean

Реализация

ArrayAccess::offsetExists()

offsetGet()source public

offsetGet( string $field )

Возвращает набор правил для поля

Параметры

строка $field
имя поля для проверки

Возвращает

Cake\Validation\ValidationSet

Реализация

ArrayAccess::offsetGet()

offsetSet()source public

offsetSet( string $field , array|Cake\Validation\ValidationSet $rules )

Устанавливает набор правил для поля

Параметры

строка $field
имя поля для установки
массив|Cake\Validation\ValidationSet $rules
набор правил для применения к полю

Реализация

ArrayAccess::offsetSet()

offsetUnset()source public

offsetUnset( string $field )

Удаляет набор правил для поля

Параметры

строка $field
имя поля для удаления

Реализация

ArrayAccess::offsetUnset()

provider()source public

provider( string $name , null|object|string $object null )

Связывает объект с именем, чтобы он мог использоваться как поставщик. Поставщики — это объекты или имена классов, которые могут содержать методы, используемые во время проверки, для определения того, можно ли применять правило проверки. Все методы проверки при вызове получат полный список поставщиков, хранящихся в этом валидаторе.

Если вызов выполнен без аргументов, он вернёт поставщика, хранящегося под этим именем, если он существует; в противном случае он возвращает этот экземпляр цепочки.

Параметры

строка $name
Имя, под которым должен быть установлен поставщик.
null|объект|строка $object необязательно null
Объект-поставщик или имя класса.

Возвращает


$this|объект|строка|null

providers()source public

providers( )

Получить список поставщиков в этом валидаторе.

Возвращает

массив

range()source public

range( string $field , array $range , string|null $message null , string|callable|null $when null )

Добавить правило проверки для обеспечения того, что поле находится в числовом диапазоне

Параметры

строка $field
Поле, к которому нужно применить правило.
массив $range
Включительно верхняя и нижняя границы допустимого диапазона.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызов функции|null $when необязательно null

«create», «update» или вызов функции, возвращающий true, когда правило проверки должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::range()

remove()source public

remove( string $field , string|null $rule null )

Удаляет правило из набора по его имени

Пример:

$validator
         ->remove('title', 'required')
         ->remove('user_id')

Параметры

строка $field
Имя поля, из которого будет удалено правило
строка|null $rule необязательно null
имя правила, которое нужно удалить

Возвращает


$this

requirePresence()source public

requirePresence( string $field , boolean|string|callable $mode true , string|null $message null )

Устанавливает, требуется ли наличие поля в массиве данных.

Параметры

строка $field
имя поля
boolean|строка|вызов функции $mode необязательно true

Допустимые значения: true, false, 'create', 'update'. Если передан вызов функции, то поле будет требоваться только тогда, когда обратная функция возвращает true.

строка|null $message необязательно null
Сообщение, которое нужно отобразить, если проверка наличия поля завершится неудачно.

Возвращает


$this

sameAs()source public

sameAs( mixed $field , mixed $secondField , string|null $message null , string|callable|null $when null )

Добавить правило для сравнения двух полей друг с другом.

Если значения обоих полей точно совпадают, правило выполнится.

Параметры

смешанный $field
Поле, к которому нужно применить правило.
смешанный $secondField
Поле, с которым нужно сравнить.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызов функции|null $when необязательно null

«create», «update» или вызов функции, возвращающий true, когда правило проверки должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::compareWith()

time()source public

time( string $field , string|null $message null , string|callable|null $when null )

Добавить правило проверки формата времени для поля.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызов функции|null $when необязательно null

«create», «update» или вызов функции, возвращающий true, когда правило проверки должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::time()

uploadedFile()source public

uploadedFile( string $field , array $options , string|null $message null , string|callable|null $when null )

Добавить правило проверки для обеспечения того, что поле является загруженным файлом

Для вариантов см. Cake\Validation\Validation::uploadedFile()

Параметры

строка $field
Поле, к которому нужно применить правило.
массив $options
Массив опций.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызов функции|null $when необязательно null

«create», «update» или вызов функции, возвращающий true, когда правило проверки должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::uploadedFile()

url()source public

url( string $field , string|null $message null , string|callable|null $when null )

Добавить правило проверки для обеспечения того, что поле является URL.

Валидатор не требует протокола.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызов функции|null $when необязательно null

«create», «update» или вызов функции, возвращающий true, когда правило проверки должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::url()

urlWithProtocol()source public

urlWithProtocol( string $field , string|null $message null , string|callable|null $when null )

Добавить правило проверки для обеспечения того, что поле является URL.

Этот валидатор требует, чтобы URL имел протокол.

Параметры

строка $field
Поле, к которому нужно применить правило.
строка|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
строка|вызов функции|null $when необязательно null

«create», «update» или вызов функции, возвращающий true, когда правило проверки должно быть применено.

Возвращает


$this

См. также

\Cake\Validation\Validation::url()
END_OF_DOCUMENT_MARKER

utf8()source public

utf8( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации, чтобы убедиться, что поле содержит только байты BMP utf8.

Параметры

string $field
Поле, к которому нужно применить правило.
string|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
string|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::utf8()

utf8Extended()source public

utf8Extended( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации, чтобы убедиться, что поле содержит только байты utf8.

Это правило будет принимать 3- и 4-байтовые последовательности UTF8, которые необходимы для эмодзи.

Параметры

string $field
Поле, к которому нужно применить правило.
string|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
string|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::utf8()

uuid()source public

uuid( string $field , string|null $message null , string|callable|null $when null )

Добавить правило валидации, чтобы убедиться, что поле является UUID.

Параметры

string $field
Поле, к которому нужно применить правило.
string|null $message необязательно null
Сообщение об ошибке, если правило не выполняется.
string|callable|null $when необязательно null

Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно применяться.

Возвращает


$this

См. также

\Cake\Validation\Validation::uuid()

Подробное описание свойств

$_allowEmptyMessagessource

protected array

Содержит сообщения об ошибках валидации, связанные с проверкой пустоты для каждого соответствующего поля.

[]

$_fieldssource

protected array

Массив объектов ValidationSet.

[]

$_presenceMessagessource

protected array

Содержит сообщения об ошибках валидации, связанные с проверкой наличия для каждого соответствующего поля.

[]

$_providerssource

protected array

Ассоциативный массив объектов или классов, содержащих методы, используемые для валидации.

[]

$_useI18nsource

protected boolean

Использовать ли функции I18n для перевода сообщений об ошибках по умолчанию?

false

© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/3.2/class-Cake.Validation.Validator.html

Spec-Zone.ru

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