Ip

Дата обновления перевода 2023-01-13

Ip

Валидирует, что значение является валидным IP-адресом. По умолчанию, валидируется значение, как IPv4, но существует несколько разных опций, для валидирования, как IPv6 и многих других комбинаций.

??????????? ? ???????? ??? ??????
????? Ip
????????? IpValidator

Базовое применение

  • Attributes
  • YAML
  • XML
  • PHP
1
2
3
4
5
6
7
8
9
10
// src/Entity/Author.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;

class Author
{
    #[Assert\Ip]
    protected $ipAddress;
}

Note

As with most of the other constraints, null and empty strings are considered valid values. This is to allow them to be optional values. If the value is mandatory, a common solution is to combine this constraint with NotBlank.

Опции

groups

type: array | string

It defines the validation group or groups of this constraint. Read more about validation groups.

message

тип: string по умолчанию: Это не валидный IP-адрес.

Это сообщение отображается, если строка не является валидным IP-адресом.

Вы можете использовать следующие параметры в этом сообщении:

???????? ????????
{{ value }} ??????? (??????????) ????????
{{ label }} ??????????????? ????? ???? ?????

normalizer

type: a PHP callable default: null

This option allows to define the PHP callable applied to the given value before checking if it is valid.

For example, you may want to pass the 'trim' string to apply the trim PHP function in order to ignore leading and trailing whitespace during validation.

payload

тип: mixed по умолчанию: null

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

Например, вы можете захотеть исользовать несколько уровней ошибок, чтобы представить неудачные ограничения в фронт-энде по-разному, в зависимости от степени сложности ошибки.

version

тип: string по умолчанию: 4

Определяет, как именно валидируется IP адрес, и может использовать одно из набора разных значений:

Все диапазоны

4
Валидирует для адресов IPv4
6
Валидирует для адресов IPv6
all
Валидирует все IP-форматы

Без приватных диапазонов

4_no_priv
Валидирует для IPv4, но без приватных IP-диапазонов
6_no_priv
Валидирует для IPv6, но без приватных IP-диапазонов
all_no_priv
Валидирует для всех IP-форматов, но без приватных IP-диапазонов

Без зарезериврованных диапазонов

4_no_res
Валидирует для IPv4, но без зарезериврованных IP-диапазонов
6_no_res
Валидирует для IPv6, но без зарезериврованных IP-диапазонов
all_no_res
Валидирует для всех IP-форматов, но без зарезериврованных IP-диапазонов

Только публичные диапазоны

4_public
Валидирует для IPv4, но без приватных и зарезериврованных IP-диапазонов
6_public
Валидирует для IPv6, но без приватных и зарезериврованных IP-диапазонов
all_public
Валидирует для всех IP-форматов, но без приватных и зарезериврованных IP-диапазонов