Класс Validator
Объект Validator объединяет все методы, связанные с проверкой данных для модели. Он также предоставляет API для динамического изменения правил проверки для каждого поля модели.
Реализует ArrayAccess для удобной модификации правил в наборе.
- Cake\Validation\Validator реализует ArrayAccess, IteratorAggregate, Countable
Ссылка: https://book.cakephp.org/3.0/ru/core-libraries/validation.html
Расположение: Validation/Validator.php
Краткое описание констант
-
integerEMPTY_ALLself::EMPTY_STRING|self::EMPTY_ARRAY|self::EMPTY_FILE|self::EMPTY_DATE|self::EMPTY_TIME -
integerEMPTY_ARRAY2 -
integerEMPTY_DATE8 -
integerEMPTY_FILE4 -
integerEMPTY_STRING1 -
integerEMPTY_TIME16 -
stringNESTED'_nested'
Краткое описание свойств
-
$_allowEmptyFlagsprotectedСодержит флаги, которые указывают, что пусто для каждого соответствующего поля.array -
$_allowEmptyMessagesprotectedarrayСодержит сообщения проверки, связанные с проверкой пустоты для каждого соответствующего поля.
- Ассоциативный массив объектов или классов, используемых в качестве списка поставщиков по умолчанию
array -
$_fieldsprotectedМассив объектов ValidationSetarray -
$_presenceMessagesprotectedarrayСодержит сообщения проверки, связанные с проверкой наличия для каждого соответствующего поля.
-
$_providersprotectedarrayАссоциативный массив объектов или классов, содержащих методы, используемые для проверки.
-
$_useI18nprotectedИспользовать ли функции I18n для перевода сообщений об ошибках по умолчаниюboolean
Краткое описание методов
- __construct() publicКонструктор
- __debugInfo() publicПолучить печатную версию этого объекта.
- _canBeEmpty() protectedВозвращает, может ли поле быть пустым в соответствии с
allowEmpty - _checkPresence() protected
Возвращает false, если какая-либо валидация для переданного набора правил должна быть остановлена из-за отсутствия поля в массиве данных
- _convertValidatorToArray() protectedПреобразует валидатор в массив fieldName => $settings
- Возвращает true, если поле пусто в переданном массиве данных
- _processRules() protected
Перебирает каждое правило в наборе валидации и собирает ошибки, полученные в результате их выполнения
- add() public
Добавляет новое правило в набор правил поля. Если второй аргумент является массивом, то список правил для поля будет заменён вторым аргументом, а третий аргумент будет проигнорирован.
- Ассоциирует объект с именем, чтобы он мог быть использован в качестве поставщика по умолчанию.
- addNested() publicДобавляет вложенный валидатор.
- addNestedMany() publicДобавляет вложенный валидатор.
-
Разрешает поле быть пустым. Также можно передать массив. Использование массива позволит указать следующие ключи:
- allowEmptyArray() publicРазрешает поле быть пустым массивом.
- allowEmptyDate() publicРазрешает поле быть пустой датой.
- allowEmptyDateTime() publicРазрешает поле быть пустой датой/временем.
- allowEmptyFile() publicРазрешает поле быть пустым файлом.
- allowEmptyFor() publicУказывает, что поле может быть пустым.
- allowEmptyString() publicРазрешает поле быть пустой строкой.
- allowEmptyTime() publicРазрешает поле быть пустым временем.
- alphaNumeric() publicДобавляет правило alphanumeric для поля.
- ascii() publicДобавляет правило валидации, чтобы убедиться, что поле содержит только символы ASCII
- boolean() publicДобавляет правило валидации boolean для поля.
- containsNonAlphaNumeric() publicДобавляет правило, проверяющее наличие небуквенно-цифровых символов в поле.
- count() publicВозвращает количество полей с правилами валидации
- creditCard() publicДобавляет правило валидации для номера кредитной карты.
- date() publicДобавляет правило валидации формата даты для поля.
- dateTime() publicДобавляет правило валидации формата даты и времени для поля.
- decimal() publicДобавляет правило валидации decimal для поля.
- email() publicДобавляет правило валидации для адресов электронной почты.
- equalToField() publicДобавляет правило сравнения значения одного поля с другим.
- equals() publicДобавляет правило сравнения полей на равенство.
- errors() public
Возвращает массив полей, которые не прошли валидацию. Для текущей модели. Этот метод фактически выполнит правила валидации над данными, а не просто вернёт сообщения.
- field() public
Возвращает объект ValidationSet, содержащий все правила валидации для поля. Если в качестве второго аргумента передан ValidationSet, он заменит любой другой набор правил, определённый ранее.
- Возвращает поставщика по умолчанию, хранящегося под этим именем, если он существует.
- Получить список поставщиков по умолчанию.
- getIterator() publicВозвращает итератор для каждого поля, которое нужно валидировать
- getNotEmptyMessage() publicПолучить сообщение notEmpty для поля
- getProvider() publicВозвращает поставщика, хранящегося под данным именем, если он существует.
- getRequiredMessage() publicПолучить сообщение required для поля
- greaterThan() publicДобавляет правило сравнения больше, чем для поля.
- greaterThanField() publicДобавляет правило сравнения одного поля с другим по условию больше.
- greaterThanOrEqual() publicДобавляет правило сравнения больше или равно для поля.
- greaterThanOrEqualToField() publicДобавляет правило сравнения одного поля с другим по условию больше или равно.
- hasAtLeast() public
Добавляет правило валидации, чтобы убедиться, что поле является массивом, содержащим по крайней мере указанное количество элементов
- hasAtMost() public
Добавляет правило валидации, чтобы убедиться, что поле является массивом, содержащим не более указанного количества элементов
- hasField() publicПроверяет, содержит ли валидатор какие-либо правила для данного поля.
- hexColor() publicДобавляет правило валидации, чтобы убедиться, что поле является 6-значным кодом цвета в шестнадцатеричной системе.
- inList() publicДобавляет правило валидации, чтобы убедиться, что значение поля находится в белом списке.
- integer() publicДобавляет правило валидации, чтобы убедиться, что поле является целым числом.
- ip() publicДобавляет правило валидации IP для поля.
- ipv4() publicДобавляет правило валидации IPv4 для поля.
- ipv6() publicДобавляет правило валидации IPv6 для поля.
- isArray() publicДобавляет правило валидации, чтобы убедиться, что поле содержит массив.
- isEmpty() protectedВозвращает true, если поле пусто в переданном массиве данных
- isEmptyAllowed() public
Возвращает, разрешено ли поле быть пустым для новой или уже существующей записи.
- isPresenceRequired() public
Возвращает, может ли поле быть опущено для новой или уже существующей записи.
- latLong() publicДобавляет правило проверки, чтобы гарантировать, что поле является кортежем широты/долготы.
- latitude() publicДобавляет правило проверки, чтобы гарантировать, что поле является значением широты.
- lengthBetween() publicДобавляет правило, которое гарантирует, что длина строки находится в заданном диапазоне.
- lessThan() publicДобавляет правило сравнения "меньше" для поля.
- lessThanField() publicДобавляет правило сравнения одного поля с другим по условию "меньше".
- lessThanOrEqual() publicДобавляет правило сравнения "меньше или равно" для поля.
- lessThanOrEqualToField() publicДобавляет правило сравнения одного поля с другим по условию "меньше или равно".
- localizedTime() publicДобавляет правило проверки формата локального времени, даты или даты и времени для поля.
- longitude() publicДобавляет правило проверки, чтобы гарантировать, что поле является значением долготы.
- maxLength() publicДобавляет правило проверки длины строки для поля.
- maxLengthBytes() publicДобавляет правило проверки длины строки для поля.
- minLength() publicДобавляет правило проверки длины строки для поля.
- minLengthBytes() publicДобавляет правило проверки длины строки для поля.
- multipleOptions() publicДобавляет правило проверки для множественного выбора. Сравнение по умолчанию регистрозависимое.
- naturalNumber() publicДобавляет правило проверки на натуральное число для поля.
- nonNegativeInteger() publicДобавляет правило проверки, чтобы гарантировать, что поле является неотрицательным целым числом.
- notBlank() publicДобавляет правило notBlank для поля.
-
Устанавливает требование о непустом значении для поля. Также можно передать массив. Использование массива позволит задать следующие ключи:
- notEqualToField() publicДобавляет правило сравнения одного поля с другим по условию "не равно".
- notEquals() publicДобавляет правило сравнения "не равно" для поля.
- notSameAs() publicДобавляет правило сравнения, гарантирующее, что два поля имеют разные значения.
- numeric() publicДобавляет правило проверки на числовое значение для поля.
- offsetExists() publicВозвращает, определено ли правило для поля.
- offsetGet() publicВозвращает набор правил для поля.
- offsetSet() publicУстанавливает набор правил для поля.
- offsetUnset() publicУдаляет набор правил для поля.
-
Ассоциирует объект с именем, чтобы он мог быть использован в качестве поставщика. Поставщики — это объекты или имена классов, которые могут содержать методы, используемые во время проверки для определения, может ли быть применено правило проверки. Все методы проверки, при вызове, получат полный список поставщиков, хранящихся в этом валидаторе.
- providers() publicПолучить список поставщиков в этом валидаторе.
- range() publicДобавляет правило проверки, чтобы гарантировать, что поле находится в числовом диапазоне.
- regex() publicВозвращает, соответствует ли поле регулярному выражению.
- remove() publicУдаляет правило из набора по его имени.
- requirePresence() public
Устанавливает, обязательно ли поле должно присутствовать в массиве данных. Также можно передать массив. Использование массива позволит задать следующие ключи:
- sameAs() publicДобавляет правило сравнения двух полей между собой.
- scalar() publicДобавляет правило проверки, чтобы гарантировать, что поле содержит скалярное значение.
- setProvider() public
Ассоциирует объект с именем, чтобы он мог быть использован в качестве поставщика. Поставщики — это объекты или имена классов, которые могут содержать методы, используемые во время проверки для определения, может ли быть применено правило проверки. Все методы проверки, при вызове, получат полный список поставщиков, хранящихся в этом валидаторе.
- time() publicДобавляет правило проверки формата времени для поля.
- uploadedFile() publicДобавляет правило проверки, чтобы гарантировать, что поле является загруженным файлом.
- url() publicДобавляет правило проверки, чтобы гарантировать, что поле является URL-адресом.
- urlWithProtocol() publicДобавляет правило проверки, чтобы гарантировать, что поле является URL-адресом.
- utf8() publicДобавляет правило проверки, чтобы гарантировать, что поле содержит только байты BMP utf8.
- utf8Extended() publicДобавляет правило проверки, чтобы гарантировать, что поле содержит только байты utf8.
- uuid() publicДобавляет правило проверки, чтобы гарантировать, что поле является UUID.
Подробное описание методов
_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_convertValidatorToArray()source protected
_convertValidatorToArray( integer|string $fieldName , array $defaults = [] , string|array $settings = [] )
Преобразует валидатор в массив fieldName => $settings
Параметры
- целое число или строка
$fieldName - имя поля
- массив
$defaultsнеобязательно [] - настройки по умолчанию
- строка или массив
$settingsнеобязательно [] - настройки из данных
Возвращает
массив_fieldIsEmpty()source protected устарело
_fieldIsEmpty( mixed $data )
Возвращает true, если поле пустое в переданном массиве данных
Устарело
3.7.0 Используйте isEmpty() вместо этогоПараметры
- смешанное значение
$data - Значение для проверки.
Возвращает
boolean_processRules()source protected
_processRules( string $field , Cake\Validation\ValidationSet $rules , array $data , boolean $newRecord )
Итерируется по каждому правилу в наборе валидации и собирает ошибки, возникающие при их выполнении
Параметры
- строка
$field - Имя обрабатываемого поля
-
Cake\Validation\ValidationSet$rules - список правил для поля
- массив
$data - полные данные, переданные валидатору
- булево значение
$newRecord - является ли это новой записью или существующей
Возвращает
массив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необязательно [] - правило для добавления
Возвращает
$this
addDefaultProvider()source public static
addDefaultProvider( string $name , object|string $object )
Связывает объект с именем, чтобы он мог использоваться в качестве поставщика по умолчанию.
Параметры
- строка
$name - Имя, под которым должен быть установлен поставщик.
- объект или имя класса
$object - Объект-поставщик или имя класса.
addNested()source public
addNested( string $field , Cake\Validation\Validator $validator , string|null $message = null , string|callable|null $when = null )
Добавляет вложенный валидатор.
Вложенные валидаторы позволяют определять валидаторы для массивов. Например, вложенные валидаторы идеально подходят для валидации поддокумента или сложного массива.
Этот метод предполагает, что поддокумент имеет отношение 1:1 с родительским.
Поставщики родительского валидатора будут синхронизированы во вложенный валидатор при проверке ошибок. Это гарантирует, что все поставщики правил валидации, подключенные к родителю, будут иметь одинаковые значения во вложенном валидаторе при оценке правил.
Параметры
- строка
$field - Корневое поле для вложенного валидатора.
-
Cake\Validation\Validator$validator - Вложенный валидатор.
- строка или null
$messageнеобязательно null - Сообщение об ошибке при ошибке правила.
- строка, вызываемая функция или null
$whenнеобязательно null Либо 'create', либо 'update', либо вызываемая функция, которая возвращает true, когда правило валидации должно быть применено.
Возвращает
$this
addNestedMany()source public
addNestedMany( string $field , Cake\Validation\Validator $validator , string|null $message = null , string|callable|null $when = null )
Добавляет вложенный валидатор.
Вложенные валидаторы позволяют определять валидаторы для массивов. Например, вложенные валидаторы идеально подходят для валидации множества похожих поддокументов или сложных типов массивов.
Этот метод предполагает, что поддокумент имеет отношение 1:N с родителем.
Поставщики родительского валидатора будут синхронизированы во вложенный валидатор при проверке ошибок. Это гарантирует, что все поставщики правил валидации, подключенные к родителю, будут иметь одинаковые значения во вложенном валидаторе при оценке правил.
Параметры
- строка
$field - Корневое поле для вложенного валидатора.
-
Cake\Validation\Validator$validator - Вложенный валидатор.
- строка или null
$messageнеобязательно null - Сообщение об ошибке при ошибке правила.
- строка, вызываемая функция или null
$whenнеобязательно null Либо 'create', либо 'update', либо вызываемая функция, которая возвращает true, когда правило валидации должно быть применено.
Возвращает
$this
allowEmpty()source public устарело
allowEmpty( string|array $field , boolean|string|callable $when = true , string|null $message = null )
Разрешает поле быть пустым. Также можно передать массив. Использование массива позволит вам предоставить следующие ключи:
-
whenусловие для поля - 'message' индивидуальное сообщение для поля
Также можно задать when и message для всех переданных полей, индивидуальное значение имеет приоритет над групповыми значениями.
Это противоположность notEmpty(), которая требует, чтобы поле не было пустым. Используя $mode равный 'create' или 'update', можно разрешить поля быть пустыми при первом создании записей или при их обновлении.
Пример:
// Email can be empty
$validator->allowEmpty('email');
// Email can be empty on create
$validator->allowEmpty('email', 'create');
// Email can be empty on update
$validator->allowEmpty('email', 'update');
// Email and subject can be empty on update
$validator->allowEmpty(['email', 'subject'], 'update');
// Email can be always empty, subject and content can be empty on update.
$validator->allowEmpty(
[
'email' => [
'when' => true
],
'content' => [
'message' => 'Content cannot be empty'
],
'subject'
],
'update'
); Можно условно разрешить пустоту поля, передав обратный вызов в качестве второго аргумента. Обратный вызов получит массив контекста валидации в качестве аргумента:
$validator->allowEmpty('email', function ($context) {
return !$context['newRecord'] || $context['data']['role'] === 'admin';
}); Этот метод правильно обнаружит пустые загрузки файлов и поля типа дата/время.
Поскольку этот метод и notEmpty() изменяют одно и то же внутреннее состояние, последний вызванный метод будет иметь приоритет.
Устарело
3.7.0 Используйте allowEmptyString(), allowEmptyArray(), allowEmptyFile(), allowEmptyDate(), allowEmptyTime() или allowEmptyDateTime() вместо этого.
Параметры
- строка или массив
$field - имя поля или список полей
- boolean, строка или callable
$whenнеобязательно true Указывает, когда поле разрешается быть пустым. Допустимые значения — true (всегда), 'create', 'update'. Если передан обратный вызов, то поле будет пустым только тогда, когда обратный вызов возвращает true.
- строка или null
$messageнеобязательно null - Сообщение для отображения, если поле не
Возвращает
$this
allowEmptyArray()source public
allowEmptyArray( string $field , boolean|string|callable $when = true , string|null $message = null )
Разрешает поле быть пустым массивом.
Этот метод эквивалентен вызову allowEmptyFor() с флагами EMPTY_STRING + EMPTY_ARRAY.
Параметры
- строка
$field - Имя поля.
- boolean, строка или callable
$whenнеобязательно true Указывает, когда поле разрешается быть пустым. Допустимые значения — true, false, 'create', 'update'. Если передан обратный вызов, то поле будет пустым только тогда, когда обратный вызов возвращает true.
- строка или null
$messageнеобязательно null - Сообщение для отображения, если поле не
Возвращает
$this
Since
3.7.0См
\Cake\Validation\Validator::allowEmptyFor() Для подробного использованияallowEmptyDate()source public
allowEmptyDate( string $field , boolean|string|callable $when = true , string|null $message = null )
Разрешает поле быть пустой датой.
Этот метод эквивалентен вызову allowEmptyFor() с флагами EMPTY_STRING + EMPTY_DATE.
Параметры
- строка
$field - Имя поля.
- boolean, строка или callable
$whenнеобязательно true Указывает, когда поле разрешается быть пустым. Допустимые значения — true, false, 'create', 'update'. Если передан обратный вызов, то поле будет пустым только тогда, когда обратный вызов возвращает true.
- строка или null
$messageнеобязательно null - Сообщение для отображения, если поле не
Возвращает
$this
Since
3.7.0См
\Cake\Validation\Validator::allowEmptyFor() Для подробного использованияallowEmptyDateTime()source public
allowEmptyDateTime( string $field , boolean|string|callable $when = true , string|null $message = null )
Разрешает поле быть пустой датой/временем.
Этот метод эквивалентен вызову allowEmptyFor() с флагами EMPTY_STRING + EMPTY_DATE + EMPTY_TIME.
Параметры
- string
$field - Имя поля.
- boolean|string|callable
$whenoptional true Указывает, когда поле может быть пустым. Допустимые значения: true, false, 'create', 'update'. Если передана вызываемая функция, то поле будет разрешено быть пустым только тогда, когда функция вернёт true.
- string|null
$messageoptional null - Сообщение, отображаемое, если поле не
Возвращает
$this
С тех пор
3.7.0См. также
\Cake\Validation\Validator::allowEmptyFor() Для подробного использованияallowEmptyFile()source public
allowEmptyFile( string $field , boolean|string|callable $when = true , string|null $message = null )
Разрешает поле быть пустым файлом.
Этот метод эквивалентен вызову allowEmptyFor() с флагом EMPTY_FILE.
Параметры
- string
$field - Имя поля.
- boolean|string|callable
$whenoptional true Указывает, когда поле может быть пустым. Допустимые значения: true, false, 'create', 'update'. Если передана вызываемая функция, то поле будет разрешено быть пустым только тогда, когда функция вернёт true.
- string|null
$messageoptional null - Сообщение, отображаемое, если поле не
Возвращает
$this
С тех пор
3.7.0См. также
\Cake\Validation\Validator::allowEmptyFor() Для подробного использованияallowEmptyFor()source public
allowEmptyFor( string $field , integer|null $flags , boolean|string|callable $when = true , string|null $message = null )
Указывает, что поле может быть пустым.
Использование массива позволит вам указать следующие ключи:
-
flagsиндивидуальные флаги для поля -
whenиндивидуальные условия для поля -
messageиндивидуальные сообщения для поля
Вы также можете установить флаги, время и сообщение для всех переданных полей, индивидуальные настройки имеют приоритет над групповыми настройками.
Пример:
// Email can be empty
$validator->allowEmptyFor('email', Validator::EMPTY_STRING);
// Email can be empty on create
$validator->allowEmptyFor('email', Validator::EMPTY_STRING, 'create');
// Email can be empty on update
$validator->allowEmptyFor('email', Validator::EMPTY_STRING, 'update'); Возможно условно разрешить пустоту поля, передав вызываемую функцию в качестве второго аргумента. Функция получит массив контекста валидации в качестве аргумента:
$validator->allowEmpty('email', Validator::EMPTY_STRING, function ($context) {
return !$context['newRecord'] || $context['data']['role'] === 'admin';
}); Если вы хотите разрешить другой тип пустых данных в поле, вам нужно передать другие флаги:
$validator->allowEmptyFor('photo', Validator::EMPTY_FILE);
$validator->allowEmptyFor('published', Validator::EMPTY_STRING | Validator::EMPTY_DATE | Validator::EMPTY_TIME);
$validator->allowEmptyFor('items', Validator::EMPTY_STRING | Validator::EMPTY_ARRAY); Вы также можете использовать удобные обёртки этого метода. Следующие вызовы эквивалентны вышеприведённым:
$validator->allowEmptyFile('photo');
$validator->allowEmptyDateTime('published');
$validator->allowEmptyArray('items'); Параметры
- string
$field - Имя поля.
- integer|null
$flags - Побитовая маска флагов EMPTY_*, которые указывают, что пусто
- boolean|string|callable
$whenoptional true Указывает, когда поле может быть пустым. Допустимые значения: true, false, 'create', 'update'. Если передана вызываемая функция, то поле будет разрешено быть пустым только тогда, когда функция вернёт true.
- string|null
$messageoptional null - Сообщение, отображаемое, если поле не
Возвращает
$this
С тех пор
3.7.0allowEmptyString()source public
allowEmptyString( string $field , boolean|string|callable $when = true , string|null $message = null )
Разрешает поле быть пустой строкой.
Этот метод эквивалентен вызову allowEmptyFor() с флагом EMPTY_STRING.
Параметры
- string
$field - Имя поля.
- boolean|string|callable
$whenoptional true Указывает, когда поле может быть пустым. Допустимые значения: true, false, 'create', 'update'. Если передана вызываемая функция, то поле будет разрешено быть пустым только тогда, когда функция вернёт true.
- string|null
$messageoptional null - Сообщение, отображаемое, если поле не
Возвращает
$this
С тех пор
3.7.0См. также
\Cake\Validation\Validator::allowEmptyFor() Для подробного использованияallowEmptyTime()source public
allowEmptyTime( string $field , boolean|string|callable $when = true , string|null $message = null )
Разрешает поле быть пустым временем.
Этот метод эквивалентен вызову allowEmptyFor() с флагами EMPTY_STRING + EMPTY_TIME.
Параметры
- string
$field - Имя поля.
- boolean|string|callable
$whenoptional true Указывает, когда поле может быть пустым. Допустимые значения: true, false, 'create', 'update'. Если передана вызываемая функция, то поле будет разрешено быть пустым только тогда, когда функция вернёт true.
- string|null
$messageoptional null - Сообщение, отображаемое, если поле не
Возвращает
$this
С тех пор
3.7.0См. также
\Cake\Validation\Validator::allowEmptyFor() Для подробного использованияalphaNumeric()source public
alphaNumeric( string $field , string|null $message = null , string|callable|null $when = null )
Добавляет правило проверки на алфавитно-цифровое значение поля.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string|null
$messageoptional null - Сообщение об ошибке, если правило не выполняется.
- string|callable|null
$whenoptional 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.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string|null
$messageoptional null - Сообщение об ошибке, если правило не выполняется.
- string|callable|null
$whenoptional null Значение 'create' или 'update' или вызываемая функция, возвращающая true, когда правило валидации должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::ascii()boolean()source public
boolean( string $field , string|null $message = null , string|callable|null $when = null )
Добавляет правило проверки на булево значение поля.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string|null
$messageoptional null - Сообщение об ошибке, если правило не выполняется.
- string|callable|null
$whenoptional 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 )
Добавляет правило для проверки, содержит ли поле не алфавитно-цифровые символы.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- integer
$limitoptional 1 - Минимальное количество не алфавитно-цифровых символов, требуемых.
- string|null
$messageoptional null - Сообщение об ошибке, если правило не выполняется.
- string|callable|null
$whenoptional null Значение 'create' или 'update' или вызываемая функция, возвращающая true, когда правило валидации должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::containsNonAlphaNumeric()count()source public
count( )
Возвращает количество полей, имеющих правила валидации.
Возвращает
integerРеализация
Countable::count() creditCard()source public
creditCard( string $field , string $type = 'all' , string|null $message = null , string|callable|null $when = null )
Добавить правило проверки кредитных карт к полю.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string
$typeнеобязательно 'all' Тип карт, которые нужно разрешить. По умолчанию 'all'. Также можно указать массив допустимых типов карт. Например,
['mastercard', 'visa', 'amex']- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create', 'update' или вызываемый объект, возвращающий true, когда правило проверки должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::creditCard()date()source public
date( string $field , array $formats = ['ymd'] , string|null $message = null , string|callable|null $when = null )
Добавить правило проверки формата даты к полю.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- array
$formatsнеобязательно ['ymd'] - Список допустимых форматов дат.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|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 )
Добавить правило проверки формата даты и времени к полю.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- array
$formatsнеобязательно ['ymd'] - Список допустимых форматов дат.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|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 )
Добавить правило проверки десятичного числа к полю.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- integer|null
$placesнеобязательно null - Количество знаков после запятой.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|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 )
Добавить правило проверки электронной почты к полю.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- boolean
$checkMXнеобязательно false - Выполнять ли проверку MX записей.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create', 'update' или вызываемый объект, возвращающий true, когда правило проверки должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::email()equalToField()source public
equalToField( string $field , string $secondField , string|null $message = null , string|callable|null $when = null )
Добавить правило сравнения одного поля с другим.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string
$secondField - Поле, с которым нужно сравнить.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create', 'update' или вызываемый объект, возвращающий true, когда правило проверки должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::compareFields()С момента
3.6.0equals()source public
equals( string $field , integer|float $value , string|null $message = null , string|callable|null $when = null )
Добавить правило сравнения поля со значением.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- integer|float
$value - Значение, с которым должно совпадать пользовательские данные.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create', 'update' или вызываемый объект, возвращающий true, когда правило проверки должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::comparison()errors()source public
errors( array $data , boolean $newRecord = true )
Возвращает массив полей, которые не прошли проверку. Для текущей модели. Этот метод фактически выполнит правила проверки на данных, а не только вернёт сообщения.
Параметры
- array
$data - Данные для проверки ошибок
- boolean
$newRecordнеобязательно true - Являются ли данные новыми или обновлёнными.
Возвращает
arrayМассив недопустимых полей
field()source public
field( string $name , Cake\Validation\ValidationSet $set = null )
Возвращает объект ValidationSet, содержащий все правила проверки для поля. Если в качестве второго аргумента передать ValidationSet, он заменит любые другие правила, определённые ранее.
Параметры
- string
$name - [необязательно] Имя поля для извлечения.
-
Cake\Validation\ValidationSet$setнеобязательно null - Набор правил для поля.
Возвращает
Cake\Validation\ValidationSetgetDefaultProvider()source public static
getDefaultProvider( string $name )
Возвращает поставщика по умолчанию, если он существует.
Параметры
- string
$name - Имя, под которым должен быть извлечён поставщик.
Возвращает
object|string|nullgetDefaultProviders()source public static
getDefaultProviders( )
Получить список поставщиков по умолчанию.
Возвращает
string[]getIterator()source public
getIterator( )
Возвращает итератор для каждого поля, которое нужно проверить.
Возвращает
ArrayIteratorРеализация
IteratorAggregate::getIterator() getNotEmptyMessage()source public
getNotEmptyMessage( string $field )
Получает сообщение неEmpty для поля
Параметры
- строка
$field - Имя поля
Возвращает
string|nullgetProvider()source public
getProvider( string $name )
Возвращает поставщика, сохранённого под этим именем, если он существует.
Параметры
- строка
$name - Имя, под которым поставщик должен быть установлен.
Возвращает
object|string|nullИсключения
ReflectionExceptiongetRequiredMessage()source public
getRequiredMessage( string $field )
Получает сообщение required для поля
Параметры
- строка
$field - Имя поля
Возвращает
string|nullgreaterThan()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()greaterThanField()source public
greaterThanField( string $field , string $secondField , string|null $message = null , string|callable|null $when = null )
Добавляет правило для сравнения одного поля больше другого.
Параметры
- строка
$field - Поле, к которому вы хотите применить правило.
- строка
$secondField - Поле, с которым вы хотите сравнить.
- строка|null
$messageнеобязательный null - Сообщение об ошибке, когда правило не выполняется.
- строка|callable|null
$whenнеобязательный null Либо 'create', либо 'update', либо вызываемый объект, который возвращает true, когда правило валидации должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::compareFields()С тех пор
3.6.0greaterThanOrEqual()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()greaterThanOrEqualToField()source public
greaterThanOrEqualToField( string $field , string $secondField , string|null $message = null , string|callable|null $when = null )
Добавляет правило для сравнения одного поля больше или равно другому.
Параметры
- строка
$field - Поле, к которому вы хотите применить правило.
- строка
$secondField - Поле, с которым вы хотите сравнить.
- строка|null
$messageнеобязательный null - Сообщение об ошибке, когда правило не выполняется.
- строка|callable|null
$whenнеобязательный null Либо 'create', либо 'update', либо вызываемый объект, который возвращает true, когда правило валидации должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::compareFields()С тех пор
3.6.0hasAtLeast()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 - Имя поля для проверки.
Возвращает
booleanhexColor()source public
hexColor( string $field , string|null $message = null , string|callable|null $when = null )
Добавляет правило валидации, чтобы убедиться, что поле является 6-значным значением цвета в формате hex.
Параметры
- строка
$field - Поле, к которому вы хотите применить правило.
- строка|null
$messageнеобязательный null - Сообщение об ошибке, когда правило не выполняется.
- строка|callable|null
$whenнеобязательный null Либо 'create', либо 'update', либо вызываемый объект, который возвращает true, когда правило валидации должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::hexColor()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 - Сообщение об ошибке, если правило не выполняется.
- строка|вызываемая функция|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 - Сообщение об ошибке, если правило не выполняется.
- строка|вызываемая функция|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 - Сообщение об ошибке, если правило не выполняется.
- строка|вызываемая функция|null
$whenнеобязательно null Либо 'create', либо 'update', либо вызываемая функция, которая возвращает true, когда правило валидации должно быть применено.
Возвращаемое значение
$this
См. также
\Cake\Validation\Validation::ip()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
См. также
\Cake\Validation\Validation::isArray()isEmpty()source protected
isEmpty( mixed $data , integer $flags )
Возвращает true, если поле пустое в переданном массиве данных.
Параметры
- смешанное
$data - Значение для проверки.
- целое число
$flags - Маска битов EMPTY_*, которые определяют, что является пустым.
Возвращаемое значение
booleanisEmptyAllowed()source public
isEmptyAllowed( string $field , boolean $newRecord )
Возвращает, разрешено ли оставить поле пустым для новой или уже существующей записи.
Параметры
- строка
$field - Имя поля.
- булево
$newRecord - указывает, новые данные или обновляемые.
Возвращаемое значение
booleanisPresenceRequired()source public
isPresenceRequired( string $field , boolean $newRecord )
Возвращает, требуется ли поле для новой или уже существующей записи.
Параметры
- строка
$field - Имя поля.
- булево
$newRecord - указывает, новые данные или обновляемые.
Возвращаемое значение
booleanlatLong()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()lessThanField()source public
lessThanField( string $field , string $secondField , string|null $message = null , string|callable|null $when = null )
Добавить правило для сравнения одного поля с другим, чтобы оно было меньше.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string
$secondField - Поле, с которым нужно сравнить.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило валидации должно быть применено.
Возвращаемое значение
$this
См. также
\Cake\Validation\Validation::compareFields()С версии
3.6.0lessThanOrEqual()source public
lessThanOrEqual( string $field , integer|float $value , string|null $message = null , string|callable|null $when = null )
Добавить правило сравнения поля с другим, чтобы оно было меньше или равно.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- integer|float
$value - Значение, которому пользовательские данные должны быть меньше или равны.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило валидации должно быть применено.
Возвращаемое значение
$this
См. также
\Cake\Validation\Validation::comparison()lessThanOrEqualToField()source public
lessThanOrEqualToField( string $field , string $secondField , string|null $message = null , string|callable|null $when = null )
Добавить правило для сравнения одного поля с другим, чтобы оно было меньше или равно.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string
$secondField - Поле, с которым нужно сравнить.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило валидации должно быть применено.
Возвращаемое значение
$this
См. также
\Cake\Validation\Validation::compareFields()С версии
3.6.0localizedTime()source public
localizedTime( string $field , string $type = 'datetime' , string|null $message = null , string|callable|null $when = null )
Добавить правило валидации для локального времени, даты или даты и времени.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string
$typeнеобязательно 'datetime' - Тип парсера, один из 'date', 'time' и 'datetime'
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|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 )
Добавить правило валидации для проверки поля на соответствие долготе.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило валидации должно быть применено.
Возвращаемое значение
$this
См. также
\Cake\Validation\Validation::longitude()maxLength()source public
maxLength( string $field , integer $max , string|null $message = null , string|callable|null $when = null )
Добавить правило валидации длины строки для поля.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- integer
$max - Максимальная длина.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило валидации должно быть применено.
Возвращаемое значение
$this
См. также
\Cake\Validation\Validation::maxLength()maxLengthBytes()source public
maxLengthBytes( string $field , integer $max , string|null $message = null , string|callable|null $when = null )
Добавить правило валидации длины строки для поля.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- integer
$max - Максимальная длина.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило валидации должно быть применено.
Возвращаемое значение
$this
См. также
\Cake\Validation\Validation::maxLengthBytes()minLength()source public
minLength( string $field , integer $min , string|null $message = null , string|callable|null $when = null )
Добавить правило валидации длины строки для поля.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- integer
$min - Минимальная длина.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило валидации должно быть применено.
Возвращаемое значение
$this
См. также
\Cake\Validation\Validation::minLength()minLengthBytes()source public
minLengthBytes( string $field , integer $min , string|null $message = null , string|callable|null $when = null )
Добавить правило валидации длины строки для поля.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- integer
$min - Минимальная длина.
- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|null
$whenнеобязательно null Значение 'create' или 'update' или вызываемый объект, возвращающий true, если правило валидации должно быть применено.
Возвращаемое значение
$this
См. также
\Cake\Validation\Validation::minLengthBytes()multipleOptions()source public
multipleOptions( string $field , array $options = [] , string|null $message = null , string|callable|null $when = null )
Добавить правило валидации для множественного выбора. Сравнение по умолчанию регистрозависимое.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- array
$optionsнеобязательно [] Параметры для валидатора. Включает параметры, определенные в \Cake\Validation\Validation::multiple() и параметр
caseInsensitive.- string|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- string|callable|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|array $field , string|null $message = null , boolean|string|callable $when = false )
Устанавливает требование к полю о необходимости иметь ненулевое значение. Вы также можете передать массив. Использование массива позволит вам предоставить следующие ключи:
-
whenиндивидуальное условие для поля -
messageиндивидуальное сообщение об ошибке для поля
Вы также можете установить when и message для всех переданных полей, индивидуальное значение имеет приоритет над групповыми настройками.
Это противоположно allowEmpty(), которое разрешает пустые поля. Используя $mode, равное 'create' или 'update', вы можете сделать поля обязательными при первом создании записей или при их обновлении.
Пример:
$message = 'This field cannot be empty';
// Email cannot be empty
$validator->notEmpty('email');
// Email can be empty on update, but not create
$validator->notEmpty('email', $message, 'create');
// Email can be empty on create, but required on update.
$validator->notEmpty('email', $message, 'update');
// Email and title can be empty on create, but are required on update.
$validator->notEmpty(['email', 'title'], $message, 'update');
// Email can be empty on create, title must always be not empty
$validator->notEmpty(
[
'email',
'title' => [
'when' => true,
'message' => 'Title cannot be empty'
]
],
$message,
'update'
); Можно условно запретить пустоту в поле, передав обратный вызов в качестве третьего аргумента. Обратный вызов получит массив контекста валидации в качестве аргумента:
$validator->notEmpty('email', 'Email is required', function ($context) {
return $context['newRecord'] && $context['data']['role'] !== 'admin';
}); Поскольку этот и allowEmpty() изменяют одно и то же внутреннее состояние, последний вызываемый метод будет иметь приоритет.
Устаревший
3.7.0 Используйте allowEmptyString(), allowEmptyArray(), allowEmptyFile(), allowEmptyDate(), allowEmptyTime() или allowEmptyDateTime() с обратным условием вместо этого.
Параметры
- строка|массив
$field - имя поля или список полей
- строка|null
$messageнеобязательно null - Сообщение, отображаемое, если поле не
- булево|строка|вызываемый объект
$whenнеобязательно false Указывает, когда поле не должно быть пустым. Допустимые значения: true (всегда), 'create', 'update'. Если передан вызываемый объект, то поле будет разрешено быть пустым только тогда, когда обратный вызов вернет false.
Возвращаемое значение
$this
notEqualToField()source public
notEqualToField( string $field , string $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::compareFields()С тех пор как
3.6.0notEquals()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()notSameAs()source public
notSameAs( string $field , string $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::compareFields()С тех пор как
3.6.0numeric()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 )
Удаляет набор правил для поля
Параметры
- string
$field - Имя поля, которое нужно удалить
Реализация
ArrayAccess::offsetUnset() provider()source public deprecated
provider( string $name , null|object|string $object = null )
Связывает объект с именем, чтобы его можно было использовать в качестве поставщика. Поставщики — это объекты или имена классов, которые могут содержать методы, используемые во время валидации для определения того, можно ли применить правило валидации. Все методы валидации, когда вызываются, получат полный список поставщиков, сохранённых в этом валидаторе.
Если вызвана без аргументов, она вернёт поставщика, сохранённого под этим именем, если он существует, в противном случае вернёт текущий экземпляр цепочки.
Устарело
3.4.0 Используйте setProvider()/getProvider() вместо этого.Параметры
- string
$name - Имя, под которым должен быть установлен поставщик.
- null|object|string
$objectoptional null - Объект-поставщик или имя класса.
Возвращает
$this|object|string|null
providers()source public
providers( )
Получает список поставщиков в этом валидаторе.
Возвращает
string[]range()source public
range( string $field , array $range , string|null $message = null , string|callable|null $when = null )
Добавляет правило валидации, чтобы убедиться, что поле находится в числовом диапазоне
Параметры
- string
$field - Поле, к которому нужно применить правило.
- array
$range - Включительно верхняя и нижняя границы допустимого диапазона.
- string|null
$messageoptional null - Сообщение об ошибке при неудаче правила.
- string|callable|null
$whenoptional null Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::range()regex()source public
regex( string $field , string $regex , string|null $message = null , string|callable|null $when = null )
Определяет, соответствует ли поле регулярному выражению.
Параметры
- string
$field - Имя поля.
- string
$regex - Регулярное выражение.
- string|null
$messageoptional null - Сообщение об ошибке при неудаче правила.
- string|callable|null
$whenoptional null Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.
Возвращает
$this
remove()source public
remove( string $field , string|null $rule = null )
Удаляет правило из набора по его имени
Пример:
$validator
->remove('title', 'required')
->remove('user_id') Параметры
- string
$field - Имя поля, из которого будет удалено правило
- string|null
$ruleoptional null - имя правила, которое нужно удалить
Возвращает
$this
requirePresence()source public
requirePresence( string|array $field , boolean|string|callable $mode = true , string|null $message = null )
Устанавливает, требуется ли присутствие поля в массиве данных. Также можно передать массив. Использование массива позволит вам указать следующие ключи:
-
modeиндивидуальный режим для поля -
messageиндивидуальное сообщение об ошибке для поля
Вы также можете установить режим и сообщение для всех переданных полей, индивидуальная настройка имеет приоритет над групповыми настройками.
Параметры
- string|array
$field - имя поля или список полей.
- boolean|string|callable
$modeoptional true Допустимые значения — true, false, 'create', 'update'. Если передана вызываемая функция, поле будет обязательным только когда обратный вызов вернёт true.
- string|null
$messageoptional null - Сообщение, отображаемое, если проверка присутствия поля завершилась неудачей.
Возвращает
$this
sameAs()source public
sameAs( string $field , string $secondField , string|null $message = null , string|callable|null $when = null )
Добавляет правило сравнения двух полей друг с другом.
Если оба поля имеют одинаковое значение, правило пройдёт.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string
$secondField - Поле, с которым нужно сравнить.
- string|null
$messageoptional null - Сообщение об ошибке при неудаче правила.
- string|callable|null
$whenoptional null Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::compareFields()scalar()source public
scalar( string $field , string|null $message = null , string|callable|null $when = null )
Добавляет правило валидации, чтобы убедиться, что поле содержит скаляр.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string|null
$messageoptional null - Сообщение об ошибке при неудаче правила.
- string|callable|null
$whenoptional null Либо 'create', либо 'update', либо вызываемый объект, возвращающий true, когда правило валидации должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::isScalar()setProvider()source public
setProvider( string $name , object|string $object )
Связывает объект с именем, чтобы его можно было использовать в качестве поставщика. Поставщики — это объекты или имена классов, которые могут содержать методы, используемые во время валидации для определения того, можно ли применить правило валидации. Все методы валидации, когда вызываются, получат полный список поставщиков, сохранённых в этом валидаторе.
Параметры
- string
$name - Имя, под которым должен быть установлен поставщик.
- object|string
$object - Объект-поставщик или имя класса.
Возвращает
$this
time()source public
time( string $field , string|null $message = null , string|callable|null $when = null )
Добавляет правило валидации формата времени для поля.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string|null
$messageoptional null - Сообщение об ошибке при неудаче правила.
- string|callable|null
$whenoptional 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()
Параметры
- string
$field - Поле, к которому нужно применить правило.
- array
$options - Массив параметров.
- string|null
$messageoptional null - Сообщение об ошибке при неудаче правила.
- string|callable|null
$whenoptional 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()utf8()source public
utf8( string $field , string|null $message = null , string|callable|null $when = null )
Добавить правило валидации, чтобы убедиться, что поле содержит только байты BMP utf8.
Параметры
- строка
$field - Поле, к которому вы хотите применить правило.
- строка|null
$messageнеобязательно null - Сообщение об ошибке, если правило не выполняется.
- строка|вызываемый объект|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.
Это правило будет принимать последовательности UTF8 длиной в 3 и 4 байта, которые необходимы для эмодзи.
Параметры
- строка
$field - Поле, к которому вы хотите применить правило.
- строка|null
$messageнеобязательно null - Сообщение об ошибке, если правило не выполняется.
- строка|вызываемый объект|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.
Параметры
- строка
$field - Поле, к которому вы хотите применить правило.
- строка|null
$messageнеобязательно null - Сообщение об ошибке, если правило не выполняется.
- строка|вызываемый объект|null
$whenнеобязательно null Либо 'create', либо 'update', либо вызываемый объект, который возвращает true, когда правило валидации должно быть применено.
Возвращает
$this
См. также
\Cake\Validation\Validation::uuid()Подробное описание свойств
$_allowEmptyFlagssource
protected массив
Содержит флаги, которые указывают, что пусто для каждого соответствующего поля.
[]
$_allowEmptyMessagessource
protected массив
Содержит сообщения валидации, связанные с проверкой пустоты для каждого соответствующего поля.
[]
$_defaultProviderssource
protected static массив
Ассоциативный массив объектов или классов, используемых в качестве списка поставщиков по умолчанию.
[]
$_presenceMessagessource
protected массив
Содержит сообщения валидации, связанные с проверкой наличия для каждого соответствующего поля.
[]
$_providerssource
protected массив
Ассоциативный массив объектов или классов, содержащих методы, используемые для валидации.
[]
$_useI18nsource
protected булево
Использовать или нет функции I18n для перевода сообщений об ошибках по умолчанию.
false
© 2005–present 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.
https://api.cakephp.org/3.7/class-Cake.Validation.Validator.html