Класс Validation
Класс Validation. Используется для валидации данных модели.
Предлагает различные методы валидации.
Авторские права: Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Utility/Validation.php
Краткое описание свойств
- Некоторые сложные шаблоны, необходимые в нескольких местах
array -
arrayСодержит массив сообщений об ошибках, заданных в этом классе. Используются для отладки.
Краткое описание методов
- Выполняет соответствие по регулярному выражению.
- Вспомогательный метод, который можно подменить при тестировании.
-
Попытка передать необработанные языковые настройки Validation в класс, начинающийся с $classPrefix и заканчивающийся Validation. Например, если $classPrefix = 'nl', классом будет
NlValidation. - Ленивое заполнение шаблонов адресов IP, используемых для валидации.
- Сброс внутренних переменных для следующей проверки валидации.
- Проверяет, что строка содержит только целые числа или буквы.
- Псевдоним Validator::lengthBetween() для обратной совместимости.
-
Возвращает true, если поле пусто -ИЛИ- в его значении присутствуют только пробельные символы. Пробельные символы включают пробел, табуляцию, возврат каретки, перевод строки.
- Валидация булевых значений, определяет, является ли переданное значение булевым целым числом или true/false.
-
Валидация номеров кредитных карт. Возвращает true, если $check имеет правильный формат кредитной карты.
- Используется для сравнения двух числовых значений.
- Используется, когда требуется пользовательское регулярное выражение.
-
Валидация дат, определяет, является ли переданная строка корректной датой. Ключи, которые ожидают полный месяц, день и год, будут проверять високосные годы.
- Валидирует значение datetime.
- Проверяет, является ли значение корректным десятичным числом. Знак и порядок величины являются необязательными.
- Проверка на корректный адрес электронной почты.
- Проверяет, что значение точно соответствует $comparedTo.
- Проверка на корректное расширение файла.
- Проверка размера файла.
- Проверка, находится ли значение в заданном списке. Сравнение по умолчанию чувствительно к регистру.
- Валидация адреса IP.
-
Проверяет, находится ли длина строки в заданном диапазоне. Пробелы включаются в подсчет символов. Возвращает true, если строка соответствует значению min, max или между min и max.
- Алгоритм Луна.
- Проверяет, является ли длина строки (в символах) меньше или равна максимальной длине.
- Проверяет, является ли длина строки (в байтах) меньше или равна максимальной длине.
- Проверка типа MIME файла.
- Проверяет, является ли длина строки (в символах) больше или равна минимальной длине.
- Проверяет, является ли длина строки (в байтах) больше или равна минимальной длине.
- Проверяет, является ли значение денежной суммой.
- Валидация множественного выбора. Сравнение по умолчанию чувствительно к регистру.
- Проверяет, является ли значение натуральным числом.
- Проверяет, что строка содержит что-либо помимо пробелов.
- Обертка для обратной совместимости Validation::notBlank().
- Проверяет, является ли значение числовым.
- Проверяет, является ли значение корректным номером телефона.
- Проверяет, является ли заданное значение корректным почтовым индексом.
-
Проверяет, находится ли число в заданном диапазоне. Если $lower и $upper не установлены, возвращает true, если $check является допустимым конечным значением на данной платформе.
- Проверяет, является ли значение корректным социальным страховым номером.
-
Валидация времени, определяет, является ли переданная строка корректным временем. Валидирует время как 24-часовое (ЧЧ:ММ) или am/pm ([Ч]Ч:ММ[a|p]m). Не допускает/не валидирует секунды.
- Проверка на ошибки загрузки.
- Валидация загруженного файла.
- Проверяет, является ли значение корректным URL-адресом в соответствии с http://www.w3.org/Addressing/URL/url-spec.txt
- Выполняет пользовательскую валидацию.
- Проверяет, является ли значение корректным UUID - http://tools.ietf.org/html/rfc4122
Подробное описание методов
_check()source protected static
_check( string $check , string $regex )
Выполняет проверку по регулярному выражению.
Параметры
- строка
$check - Значение для проверки с выражением $regex
- строка
$regex - Регулярное выражение
Возвращает
booleanРезультат проверки
_isUploadedFile()source protected static
_isUploadedFile( string $path )
Вспомогательный метод, который можно подменить при тестировании.
Параметры
- строка
$path - Путь для проверки.
Возвращает
booleanЯвляется ли файл загруженным.
_pass()source protected static
_pass( string $method , mixed $check , string $classPrefix )
Попытка передать необработанные локали Validation классу, начинающемуся с $classPrefix и заканчивающемуся Validation. Например, $classPrefix = 'nl', класс будет NlValidation.
Параметры
- строка
$method - Метод для вызова в другом классе.
- смешанное
$check - Значение для проверки или массив параметров для вызываемого метода.
- строка
$classPrefix - Префикс для класса, выполняющего проверку.
Возвращает
смешанноеРезультат вызываемого метода, false при ошибке
_populateIp()source protected static
_populateIp( )
Ленивая инициализация шаблонов IP-адресов, используемых для проверок
alphaNumeric()source public static
alphaNumeric( string|array $check )
Проверяет, что строка содержит только целые числа или буквы.
Возвращает true, если строка содержит только целые числа или буквы.
$check может быть передан как массив: array('check' => 'valueToCheck');
Параметры
- строка|массив
$check - Значение для проверки
Возвращает
booleanРезультат
between()source public static
between( string $check , integer $min , integer $max )
Псевдоним Validator::lengthBetween() для обратной совместимости.
Устаревшее
Устарело 2.6. Используйте Validator::lengthBetween() вместо этого.Параметры
- строка
$check - Значение для проверки длины
- целое число
$min - Минимальное значение в диапазоне (включительно)
- целое число
$max - Максимальное значение в диапазоне (включительно)
Возвращает
booleanРезультат
См. также
Validator::lengthBetween()blank()source public static
blank( string|array $check )
Возвращает true, если поле пустое -ИЛИ- в его значении присутствуют только пробельные символы. Пробельные символы включают пробел, табуляцию, возврат каретки, перевод строки.
$check может быть передан как массив: array('check' => 'valueToCheck');
Параметры
- строка|массив
$check - Значение для проверки
Возвращает
booleanРезультат
boolean()source public static
boolean( string $check )
Проверка на булево значение, определяет, является ли переданное значение булевым целым числом или true/false.
Параметры
- строка
$check - валидное булево значение
Возвращает
booleanРезультат
cc()source public static
cc( string|array $check , string|array $type 'fast' , boolean $deep false , string $regex null )
Проверка номеров кредитных карт. Возвращает true, если $check соответствует формату кредитной карты.
Параметры
- строка|массив
$check - номер кредитной карты для проверки
- строка|массив
$typeнеобязательно 'fast' 'all' может быть передан как строка, по умолчанию используется 'fast', который проверяет формат большинства основных кредитных карт. Если используется массив, проверяются только значения массива. Пример: array('amex', 'bankcard', 'maestro')
- булево
$deepнеобязательно false - Если установлено в true, будет проверена алгоритм Луна для кредитной карты.
- строка
$regexнеобязательно null - Также можно передать пользовательское регулярное выражение, которое будет использоваться вместо определенных значений regex.
Возвращает
booleanРезультат
См. также
Validation::luhn()comparison()source public static
comparison( string|array $check1 , string $operator null , integer $check2 null )
Используется для сравнения двух числовых значений.
Параметры
- строка|массив
$check1 если передаётся строка, для $check2 также должна быть передана строка. Используя массив: array('check1' => значение, 'operator' => 'значение', 'check2' -> значение)
- строка
$operatorнеобязательно null Может быть словом или оператором: больше >, меньше <, больше или равно >=, меньше или равно <=, меньше <, равно ==, не равно !=
- целое число
$check2необязательно null - необходимо только если $check1 является строкой
Возвращает
booleanРезультат
custom()source public static
custom( string|array $check , string $regex null )
Используется, когда требуется пользовательское регулярное выражение.
Параметры
- строка|массив
$check Если используется как строка, $regex также должно быть корректным регулярным выражением. В виде массива: array('check' => значение, 'regex' => 'корректное регулярное выражение')
- строка
$regexнеобязательно null - Если $check передан как строка, $regex также должен быть корректным регулярным выражением
Возвращает
booleanРезультат
date()source public static
date( string $check , string|array $format 'ymd' , string $regex null )
Проверка даты, определяет, является ли переданная строка корректной датой. Ключи, ожидающие полный месяц, день и год, будут проверять високосные годы.
Года валидны от 1800 до 2999.
Форматы:
-
dmy27-12-2006 или 27-12-06 разделители могут быть пробелом, точкой, дефисом, косой чертой -
mdy12-27-2006 или 12-27-06 разделители могут быть пробелом, точкой, дефисом, косой чертой -
ymd2006-12-27 или 06-12-27 разделители могут быть пробелом, точкой, дефисом, косой чертой -
dMy27 декабря 2006 или 27 дек 2006 -
MdyДекабря 27, 2006 или Дек 27, 2006 запятая необязательна -
MyДекабря 2006 или Дек 2006 -
my12/2006 или 12/06 разделители могут быть пробелом, точкой, дефисом, косой чертой -
ym2006/12 или 06/12 разделители могут быть пробелом, точкой, дефисом, косой чертой -
y2006 только год без разделителей
Параметры
- строка
$check - валидная строка даты
- строка|массив
$formatнеобязательно 'ymd' Используйте строку или массив вышеперечисленных ключей. Массивы должны быть переданы как array('dmy', 'mdy', etc)
- строка
$regexнеобязательно null - Если используется пользовательское регулярное выражение, это единственная проверка, которая будет выполнена.
Возвращает
booleanРезультат
datetime()source public static
datetime( string $check , string|array $dateFormat 'ymd' , string $regex null )
Проверяет значение даты и времени
Все значения, соответствующие правилу проверки "date" и правилу "time", будут действительными
Параметры
- строка
$check - Значение для проверки
- строка|массив
$dateFormatдополнительный 'ymd' - Формат части даты. Подробнее см. в Validation::date.
- строка
$regexдополнительный null - Регулярное выражение для части даты. Если используется пользовательское регулярное выражение, это единственная проверка, которая будет выполнена.
Возвращаемое значение
booleanTrue, если значение соответствует, false — в противном случае
См. также
Validation::dateValidation::time
decimal()source public static
decimal( float $check , integer $places null , string $regex null )
Проверяет, является ли значение действительным десятичным числом. Знак и порядок величины являются необязательными.
Допустимые значения мест:
- null => Любое количество знаков после запятой, включая ноль. Точка не обязательна.
- true => Любое количество знаков после запятой больше 0 или число с плавающей точкой. Точка обязательна.
- 1..N => Ровно столько знаков после запятой. Точка обязательна.
Параметры
- число с плавающей точкой
$check - Значение, которое проверяется на десятичную запись.
- целое число
$placesдополнительный null - Знаки после запятой.
- строка
$regexдополнительный null - Если используется пользовательское регулярное выражение, это единственная проверка, которая будет выполнена.
Возвращаемое значение
booleanУспех
email()source public static
email( string $check , boolean $deep false , string $regex null )
Проверка на адрес электронной почты.
Использует только getmxrr() для глубокой проверки, если используется PHP 5.3.0+ или любая версия PHP на не-Windows дистрибутиве
Параметры
- строка
$check - Значение для проверки
- булево
$deepдополнительный false - Выполнить более глубокую проверку (если true), также проверив доступность хоста
- строка
$regexдополнительный null - Регулярное выражение для использования (если не указано, будет использоваться встроенное регулярное выражение)
Возвращаемое значение
booleanУспех
equalTo()source public static
equalTo( mixed $check , mixed $comparedTo )
Проверяет, что значение точно равно $comparedTo.
Параметры
- смешанное
$check - Значение для проверки
- смешанное
$comparedTo - Значение для сравнения
Возвращаемое значение
booleanУспех
extension()source public static
extension( string|array $check , array $extensions array('gif', 'jpeg', 'png', 'jpg') ) Проверка на наличие действительного расширения файла.
Параметры
- строка|массив
$check - Значение для проверки
- массив
$extensionsдополнительный array('gif', 'jpeg', 'png', 'jpg') - Разрешенные расширения файлов. По умолчанию расширения — 'gif', 'jpeg', 'png', 'jpg'
Возвращаемое значение
booleanУспех
fileSize()source public static
fileSize( string|array $check , string $operator null , integer|string $size null )
Проверка размера файла
Параметры
- строка|массив
$check - Значение для проверки.
- строка
$operatorдополнительный null - См.
Validation::comparison(). - целое число|строка
$sizeдополнительный null - Размер в байтах или удобочитаемая строка, например, '5MB'.
Возвращаемое значение
booleanУспех
inList()source public static
inList( string $check , array $list , boolean $caseInsensitive false )
Проверяет, содержится ли значение в заданном списке. Сравнение по умолчанию регистрозависимое.
Параметры
- строка
$check - Значение для проверки.
- массив
$list - Список для проверки.
- булево
$caseInsensitiveдополнительный false - Установите в значение true для регистронезависимого сравнения.
Возвращаемое значение
booleanУспех.
ip()source public static
ip( string $check , string $type 'both' )
Проверка адреса IP.
Параметры
- строка
$check - Строка для проверки.
- строка
$typeдополнительный 'both' - Версия протокола IP для проверки
Возвращаемое значение
booleanУспех
lengthBetween()source public static
lengthBetween( string $check , integer $min , integer $max )
Проверяет, что длина строки находится в заданном диапазоне. Пробелы учитываются в подсчете символов. Возвращает true, если строка соответствует минимальному, максимальному или значению между минимальным и максимальным.
Параметры
- строка
$check - Значение для проверки длины
- целое число
$min - Минимальное значение в диапазоне (включительно)
- целое число
$max - Максимальное значение в диапазоне (включительно)
Возвращаемое значение
booleanУспех
luhn()source public static
luhn( string|array $check , boolean $deep false )
Алгоритм Луна
Параметры
- строка|массив
$check - Значение для проверки.
- булево
$deepдополнительный false - Если true, выполняет глубокую проверку.
Возвращаемое значение
booleanУспех
См. также
http://en.wikipedia.org/wiki/Luhn_algorithmmaxLength()source public static
maxLength( string $check , integer $max )
Проверяет, что длина строки (в символах) меньше или равна максимальной длине.
Параметры
- строка
$check - Строка для проверки
- целое число
$max - Максимальная длина строки
Возвращаемое значение
booleanУспех
maxLengthBytes()source public static
maxLengthBytes( string $check , integer $max )
Проверяет, что длина строки (в байтах) меньше или равна максимальной длине.
Параметры
- строка
$check - Строка для проверки
- целое число
$max - Максимальная длина строки
Возвращаемое значение
booleanУспех
mimeType()source public static
mimeType( string|array $check , array|string $mimeTypes array() )
Проверка MIME-типа файла.
Параметры
- строка|массив
$check - Значение для проверки.
- массив|строка
$mimeTypesдополнительный array() - Массив MIME-типов или регулярное выражение для проверки.
Возвращаемое значение
booleanУспех
Исключения
CakeExceptionесли тип MIME не может быть определен.
minLength()source public static
minLength( string $check , integer $min )
Проверяет, что длина строки (в символах) больше или равна минимальной длине.
Параметры
- строка
$check - Строка для проверки
- целое число
$min - Минимальная длина строки
Возвращаемое значение
booleanУспех
minLengthBytes()source public static
minLengthBytes( string $check , integer $min )
Проверяет, является ли длина строки (в байтах) большей или равной минимальной длине.
Параметры
- строка
$check - Строка для проверки
- целое число
$min - Минимальная длина строки
Возвращаемое значение
booleanУспех
money()source public static
money( string $check , string $symbolPosition 'left' )
Проверяет, является ли значение денежной суммой.
Параметры
- строка
$check - Значение для проверки
- строка
$symbolPositionнеобязательно 'left' - Где находится символ (слева/справа)
Возвращаемое значение
booleanУспех
multiple()source public static
multiple( array $check , array $options array() , boolean $caseInsensitive false )
Проверка множественного выбора. Сравнение по умолчанию чувствительно к регистру.
Допустимые параметры
- in => список вариантов, из которых должен быть сделан выбор
- max => максимальное количество ненулевых выбранных вариантов
- min => минимальное количество ненулевых выбранных вариантов
Параметры
- массив
$check - Значение для проверки
- массив
$optionsнеобязательно array() - Параметры для проверки.
- логическое значение
$caseInsensitiveнеобязательно false - Установите в значение true для сравнения, нечувствительного к регистру.
Возвращаемое значение
booleanУспех
naturalNumber()source public static
naturalNumber( string $check , boolean $allowZero false )
Проверяет, является ли значение натуральным числом.
Параметры
- строка
$check - Значение для проверки
- логическое значение
$allowZeroнеобязательно false - Установите значение в true, чтобы разрешить ноль, по умолчанию false
Возвращаемое значение
booleanУспех
См. также
http://en.wikipedia.org/wiki/Natural_numbernotBlank()source public static
notBlank( string $check )
Проверяет, содержит ли строка что-либо, кроме пробелов
Возвращает true, если строка содержит что-либо, кроме пробелов
Параметры
- строка
$check - Значение для проверки
Возвращаемое значение
booleanУспех
notEmpty()source public static
notEmpty( string|array $check )
Обёртка для обратной совместимости Validation::notBlank().
Устарело
2.7.0 Используйте Validation::notBlank() вместо этого.Параметры
- строка|массив
$check - Значение для проверки.
Возвращаемое значение
booleanУспех.
См. также
Validation::notBlank()numeric()source public static
numeric( string $check )
Проверяет, является ли значение числовым.
Параметры
- строка
$check - Значение для проверки
Возвращаемое значение
booleanУспех
phone()source public static
phone( string|array $check , string $regex null , string $country 'all' )
Проверка, является ли значение корректным номером телефона.
Параметры
- строка|массив
$check - Значение для проверки (строка или массив)
- строка
$regexнеобязательно null - Регулярное выражение для использования
- строка
$countryнеобязательно 'all' - Код страны (по умолчанию 'all')
Возвращаемое значение
booleanУспех
postal()source public static
postal( string|array $check , string $regex null , string $country 'us' )
Проверяет, является ли заданное значение корректным почтовым индексом.
Параметры
- строка|массив
$check - Значение для проверки
- строка
$regexнеобязательно null - Регулярное выражение для использования
- строка
$countryнеобязательно 'us' - Страна для форматирования
Возвращаемое значение
booleanУспех
range()source public static
range( string $check , integer|float $lower null , integer|float $upper null )
Проверяет, что число находится в заданном диапазоне. Если $lower и $upper не заданы, возвращает true, если $check является допустимым конечным значением на этой платформе
Параметры
- строка
$check - Значение для проверки
- целое число/число с плавающей точкой
$lowerнеобязательно null - Нижняя граница
- целое число/число с плавающей точкой
$upperнеобязательно null - Верхняя граница
Возвращаемое значение
booleanУспех
ssn()source public static
ssn( string|array $check , string $regex null , string $country null )
Проверяет, является ли значение корректным номером социального страхования.
Устарело
Устарело 2.6. Будет удалено в 3.0.Параметры
- строка|массив
$check - Значение для проверки
- строка
$regexнеобязательно null - Регулярное выражение для использования
- строка
$countryнеобязательно null - Страна
Возвращаемое значение
booleanУспех
time()source public static
time( string $check )
Валидация времени, определяет, является ли переданная строка корректным временем. Проверяет время как 24-часовое (ЧЧ:ММ) или am/pm ([Ч]Ч:ММ[a|p]м). Не допускает/не проверяет секунды.
Параметры
- строка
$check - корректная строка времени
Возвращаемое значение
booleanУспех
uploadError()source public static
uploadError( string|array $check , boolean $allowNoFile false )
Проверка ошибок загрузки
Параметры
- строка|массив
$check - Значение для проверки.
- логическое значение
$allowNoFileнеобязательно false - Установите в значение true, чтобы разрешить UPLOAD_ERR_NO_FILE как корректное значение.
Возвращаемое значение
booleanСм. также
http://www.php.net/manual/en/features.file-upload.errors.phpuploadedFile()source public static
uploadedFile( array $file , array $options array() )
Валидация загруженного файла.
Помогает объединить uploadError, fileSize и mimeType в один метод валидации более высокого уровня.
Параметры
-
types- Список допустимых типов MIME. Если пусто, все типы будут приняты.typeне будет рассматриваться, вместо этого тип файла будет проверяться с помощью ext/finfo. -
minSize- Минимальный размер файла. По умолчанию проверка не выполняется. -
maxSize- Максимальный размер файла. По умолчанию проверка не выполняется. -
optional- Является ли этот файл необязательным. По умолчанию false. Если true, отсутствие файла пройдет валидатор независимо от других ограничений.
Параметры
- массив
$file - Данные загруженного файла из PHP.
- массив
$optionsнеобязательно array() - Массив параметров для валидации.
Возвращаемое значение
booleanurl()source public static
url( string $check , boolean $strict false )
Проверяет, является ли значение корректным URL в соответствии с http://www.w3.org/Addressing/URL/url-spec.txt
Регулярное выражение проверяет следующие компоненты:
- действительный, необязательный, схему
- действительный IP-адрес ИЛИ действительное доменное имя, как определено в разделе 2.3.1 http://www.ietf.org/rfc/rfc1035.txt, с необязательным номером порта
- необязательный действительный путь
- необязательная строка запроса (параметры GET)
- необязательный фрагмент (якорь ссылки)
Параметры
- строка
$check - Значение для проверки
- булево
$strictнеобязательно false - Требовать, чтобы URL был префиксным с действительной схемой (один из http(s)/ftp(s)/file/news/gopher)
Возвращает
булевоУспех
userDefined()source public static
userDefined( string|array $check , object $object , string $method , array $args null )
Выполняет пользовательскую проверку.
Параметры
- строка|массив
$check - значение, которое будет проверено в пользовательских методах.
- объект
$object - класс, содержащий метод проверки
- строка
$method - имя метода класса для выполнения проверки
- массив
$argsнеобязательно null - аргументы для передачи методу
Возвращает
смешанныйвозвращаемое значение метода пользовательского класса
uuid()source public static
uuid( string $check )
Проверяет, является ли значение корректным UUID - http://tools.ietf.org/html/rfc4122
Параметры
- строка
$check - Значение для проверки
Возвращает
булевоУспех
Подробности свойств
$_patternsource
protected static массив
Некоторые сложные шаблоны, необходимые в нескольких местах
array(
'hostname' => '(?:[_\p{L}0-9][-_\p{L}0-9]*\.)*(?:[\p{L}0-9][-\p{L}0-9]{0,62})\.(?:(?:[a-z]{2}\.)?[a-z]{2,})'
) $errorssource
public static массив
Хранит массив сообщений об ошибках, установленных в этом классе. Они используются для отладки
array()
© 2005–2017 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/2.10/class-Validation.html