Класс Validator
Объект Validator encapsulates все методы, связанные с проверкой данных для модели. Он также предоставляет API для динамического изменения правил проверки для каждого поля модели.
Реализует ArrayAccess для удобной модификации правил в наборе.
- Cake\Validation\Validator implements ArrayAccess, IteratorAggregate, Countable
Ссылка: https://book.cakephp.org/3.0/ru/core-libraries/validation.html
Расположение: Validation/Validator.php
Краткое описание констант
-
stringNESTED'_nested'
Краткое описание свойств
-
$_allowEmptyMessagesprotectedarrayСодержит сообщения проверки, связанные с проверкой пустоты для каждого соответствующего поля.
- Ассоциативный массив объектов или классов, используемых в качестве списка поставщиков по умолчанию.
array -
$_fieldsprotectedМассив объектов ValidationSet.array -
$_presenceMessagesprotectedarrayСодержит сообщения проверки, связанные с проверкой наличия для каждого соответствующего поля.
-
$_providersprotectedarrayАссоциативный массив объектов или классов, содержащих методы, используемые для проверки.
-
$_useI18nprotectedИспользовать ли функции I18n для перевода сообщений об ошибках по умолчанию.boolean
Краткое описание методов
- __construct() publicКонструктор
- __debugInfo() publicПолучить удобочитаемый вид этого объекта.
- _canBeEmpty() protectedВозвращает, может ли поле быть пустым в соответствии с
allowEmpty - _checkPresence() protected
Возвращает false, если любая валидация для переданного набора правил должна быть остановлена из-за отсутствия поля в массиве данных
- _convertValidatorToArray() protectedПреобразует валидатор в массив fieldName => $settings
- _fieldIsEmpty() protectedВозвращает true, если поле пустое в переданном массиве данных
- _processRules() protected
Итерируется по каждому правилу в наборе валидации и собирает ошибки, полученные в результате их выполнения
- add() public
Добавляет новое правило в набор правил поля. Если второй аргумент является массивом, то список правил для поля будет заменён вторым аргументом, а третий аргумент будет проигнорирован.
- Связывает объект с именем, чтобы его можно было использовать в качестве поставщика по умолчанию.
- addNested() publicДобавляет вложенного валидатора.
- addNestedMany() publicДобавляет вложенного валидатора.
- allowEmpty() public
Разрешает поле быть пустым. Также можно передать массив. Используя массив, вы можете указать следующие ключи:
- alphaNumeric() publicДобавить правило алфавитно-цифрового формата для поля.
- ascii() publicДобавить правило валидации, чтобы убедиться, что поле содержит только байты ASCII
- boolean() publicДобавить правило валидации булевого типа для поля.
- containsNonAlphaNumeric() publicДобавить правило для проверки наличия в поле символов, не являющихся алфавитно-цифровыми.
- count() publicВозвращает количество полей, имеющих правила валидации
- creditCard() publicДобавить правило валидации для номера кредитной карты в поле.
- date() publicДобавить правило валидации формата даты для поля.
- dateTime() publicДобавить правило валидации формата даты и времени для поля.
- decimal() publicДобавить правило валидации для десятичных значений в поле.
- email() publicДобавить правило валидации электронной почты для поля.
- equalToField() publicДобавить правило для сравнения значения одного поля с другим.
- equals() publicДобавить правило сравнения равенства для поля.
- errors() public
Возвращает массив полей, которые не прошли валидацию. Для текущей модели. Этот метод фактически выполнит правила валидации над данными, а не просто вернёт сообщения.
- field() public
Возвращает объект ValidationSet, содержащий все правила валидации для поля. Если вторым аргументом передается ValidationSet, он заменит ранее определённый набор правил.
- Возвращает поставщика по умолчанию, сохранённого под этим именем, если он существует.
- Получить список поставщиков по умолчанию.
- getIterator() publicВозвращает итератор для каждого из полей, которые нужно валидировать
- getProvider() publicВозвращает поставщика, хранящегося под этим именем, если он существует.
- 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Добавить правило валидации, чтобы убедиться, что поле содержит массив.
- 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 для поля.
- notEmpty() public
Устанавливает требование к полю - непустое значение. Также можно передать массив. Использование массива позволит указать следующие ключи:
- 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, если поле пусто в переданном массиве данных
Параметры
- смешанное
$data - значение для проверки
Возвращает
boolean_processRules()source protected
_processRules( string $field , Cake\Validation\ValidationSet $rules , array $data , boolean $newRecord )
Итерируется по каждому правилу в наборе валидации и собирает ошибки, полученные в результате их выполнения
Параметры
- строка
$field - Имя обрабатываемого поля
-
Cake\Validation\ValidationSet$rules - список правил для поля
- массив
$data - полные данные, переданные валидатору
- boolean
$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' индивидуальное сообщение для поля
Вы также можете установить условие и сообщение для всех переданных полей, при этом индивидуальное значение имеет приоритет над групповыми настройками.
Это противоположность 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';
}); Этот метод правильно обнаружит пустые загрузки файлов и поля типа date/time/datetime.
Поскольку этот метод и notEmpty() изменяют один и тот же внутренний статус, последний вызываемый метод будет иметь приоритет.
Параметры
- строка|массив
$field - имя поля или список полей
- boolean|строка|вызов
$whenнеобязательно true Указывает, когда поле может быть пустым. Допустимые значения: true (всегда), 'create', 'update'. Если передан вызов, поле будет разрешено быть пустым только когда вызов вернёт true.
- строка|null
$messageнеобязательно 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 )
Добавить правило для валидации номера кредитной карты к полю.
Параметры
- 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::cc()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( )
Получить список поставщиков по умолчанию.
Возвращаемое значение
arraygetIterator()source public
getIterator( )
Возвращает итератор для каждого поля, которое нужно валидировать
Возвращаемое значение
ArrayIteratorРеализация
IteratorAggregate::getIterator() getProvider()source public
getProvider( string $name )
Возвращает поставщика, сохранённого под данным именем, если он существует.
Параметры
- строка
$name - Имя, под которым должен быть сохранён поставщик.
Возвращает
объект|строка|nullИсключения
ReflectionExceptiongreaterThan()source public
greaterThan( string $field , integer|float $value , string|null $message = null , string|callable|null $when = null )
Добавляет правило сравнения больше, чем к полю.
Параметры
- строка
$field - Поле, к которому нужно применить правило.
- целое число|число с плавающей точкой
$value - Значение, которое данные пользователя должны быть больше.
- строка|null
$messageнеобязательно null - Сообщение об ошибке, если правило не выполняется.
- строка|вызов функции|null
$whenнеобязательно null «создание», «обновление» или вызов функции, которая возвращает 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 - Сообщение об ошибке, если правило не выполняется.
- строка|вызов функции|null
$whenнеобязательно null «создание», «обновление» или вызов функции, которая возвращает 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 - Сообщение об ошибке, если правило не выполняется.
- строка|вызов функции|null
$whenнеобязательно null «создание», «обновление» или вызов функции, которая возвращает 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 - Сообщение об ошибке, если правило не выполняется.
- строка|вызов функции|null
$whenнеобязательно null «создание», «обновление» или вызов функции, которая возвращает 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 - Сообщение об ошибке, если правило не выполняется.
- строка|вызов функции|null
$whenнеобязательно null «создание», «обновление» или вызов функции, которая возвращает 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 - Сообщение об ошибке, если правило не выполняется.
- строка|вызов функции|null
$whenнеобязательно null «создание», «обновление» или вызов функции, которая возвращает 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-значное шестнадцатеричное значение цвета.
Параметры
- строка
$field - Поле, к которому нужно применить правило.
- строка|null
$messageнеобязательно null - Сообщение об ошибке, если правило не выполняется.
- строка|вызов функции|null
$whenнеобязательно null «создание», «обновление» или вызов функции, которая возвращает 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 - Сообщение об ошибке, если правило не выполняется.
- строка|вызов функции|null
$whenнеобязательно null «создание», «обновление» или вызов функции, которая возвращает 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 «создание», «обновление» или вызов функции, которая возвращает 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()isEmptyAllowed()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 )
Добавить правило для сравнения одного поля с другим, чтобы убедиться, что оно меньше другого.
Параметры
- строка
$field - Поле, к которому нужно применить правило.
- строка
$secondField - Поле, с которым нужно сравнить.
- строка|null
$messageнеобязательно null - Сообщение об ошибке при нарушении правила.
- строка|вызываемый объект|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 )
Добавить правило валидации натурального числа для поля.
Параметры
- string
$field - Поле, к которому нужно применить правило.
- string|null
$messageнеобязательно null - Сообщение об ошибке, если правило не выполняется.
- string|callable|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() изменяют один и тот же внутренний состояние, последний вызванный метод будет иметь приоритет.
Параметры
- строка|массив
$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 )
Удаляет набор правил для поля
Параметры
- строка
$field - имя поля для удаления
Реализация
ArrayAccess::offsetUnset() provider()source public deprecated
provider( string $name , null|object|string $object = null )
Связывает объект с именем, чтобы его можно было использовать в качестве поставщика. Поставщики — это объекты или имена классов, которые могут содержать методы, используемые при валидации для определения, можно ли применить правило валидации. Все методы валидации при вызове получат полный список поставщиков, сохранённых в этом валидаторе.
Если вызвано без аргументов, возвращает поставщика, сохранённого под этим именем, если он существует; в противном случае возвращает этот экземпляр цепочки.
Устарело
3.4.0 Используйте setProvider()/getProvider() вместо этого.Параметры
- строка
$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()regex()source public
regex( string $field , string $regex , string|null $message = null , string|callable|null $when = null )
Возвращает true или false в зависимости от того, соответствует ли поле регулярному выражению.
Параметры
- строка
$field - Имя поля.
- строка
$regex - Регулярное выражение.
- строка|null
$messageнеобязательно null - Сообщение об ошибке, если правило не выполняется.
- строка|вызов функции|null
$whenнеобязательно null Либо 'create', либо 'update', либо вызываемая функция, которая возвращает true, когда правило валидации должно быть применено.
Возвращает
$this
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|array $field , boolean|string|callable $mode = true , string|null $message = null )
Устанавливает, требуется ли наличие поля в массиве данных. Также можно передать массив. Используя массив, вы можете указать следующие ключи:
-
modeиндивидуальный режим для поля -
messageиндивидуальное сообщение об ошибке для поля
Также можно установить режим и сообщение для всех переданных полей; индивидуальное значение имеет приоритет над групповыми настройками.
Параметры
- строка|массив
$field - Имя поля или список полей.
- boolean|строка|вызов функции
$modeнеобязательно true Допустимые значения — true, false, 'create', 'update'. Если передана вызываемая функция, поле будет требоваться только тогда, когда эта функция вернёт true.
- строка|null
$messageнеобязательно null - Сообщение, отображаемое, если проверка наличия поля завершится неудачно.
Возвращает
$this
sameAs()source public
sameAs( 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()scalar()source public
scalar( 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::isScalar()setProvider()source public
setProvider( string $name , object|string $object )
Связывает объект с именем, чтобы его можно было использовать в качестве поставщика. Поставщики — это объекты или имена классов, которые могут содержать методы, используемые при валидации для определения, можно ли применить правило валидации. Все методы валидации при вызове получат полный список поставщиков, сохранённых в этом валидаторе.
Параметры
- строка
$name - Имя, под которым должен быть установлен поставщик.
- объект|строка
$object - Объект поставщика или имя класса.
Возвращает
$this
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()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.
Это правило будет принимать 3 и 4-байтовые последовательности UTF8, необходимые для эмодзи.
Параметры
- строка
$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()Подробное описание свойств
$_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.6/class-Cake.Validation.Validator.html