Ip

Дата обновления перевода 2024-07-25

Ip

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

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

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

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 string $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 default: null

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.

Дата обновления перевода 2024-07-25

payload

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

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

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

version

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

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

??????????? ????????? ?????? IPv4 ?????? ?????? IPv6 ?????? IPv4 ? IPv6
??? 4 6 all
???, ????? ????????? 4_no_priv 6_no_priv all_no_priv
???, ????? ????????????????? 4_no_res 6_no_res all_no_res
???, ????? ????????? 4_no_public 6_no_public all_no_public
?????? ????????? 4_private 6_private all_private
?????? ????????????????? 4_reserved 6_reserved all_reserved
?????? ????????? 4_public 6_public all_public

7.1

Диапазоны *_no_public, *_reserved и *_public были представлены в Symfony 7.1.