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