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;
}

Дата обновления перевода 2025-02-21

Note

Как и в большинстве других ограничений, null и пустые строки считаются валидными значениями. Это для того, чтобы позволить им быть опциональными значениями. Если значение является обязательным, распространенным решением будет комбинация этого ограничения с NotBlank.

Опции

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

groups

тип: array | string по умолчанию: null

Определяет группу или группы валидации ограничений. Прочитайте больше о группах валидации.

message

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

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

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

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

Дата обновления перевода 2025-02-21

normalizer

тип: PHP-вызываемое по умолчанию: null

Эта опция позволяет вам определять PHP-вызываемое, примененное к заданному значению до проверки, является ли оно валидным.

Например, вы можете захотеть передать строку 'trim' для применения PHP-функции trim, чтобы игнорировать начальные и замыкающие пробелы во время валидации.

Дата обновления перевода 2025-02-05

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.