Cidr

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

Cidr

Валидирует, что значение является валидной нотацией CIDR (Бесклассовой адресации). По умолчанию, это валидирует IP и маску сети CIDR какк для версии 4, так и 6, с опцией разрешения только одного валидного типа версии IP. It also supports a minimum and maximum range constraint in which the value of the netmask is valid.

??????????? ? property or method
????? Cidr
????????? CidrValidator

Базовое использование

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

use Symfony\Component\Validator\Constraints as Assert;

class NetworkSettings
{
    #[Assert\Cidr]
    protected $cidrNotation;
}

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 по умолчанию: Это значение не является валидной нотацией CIDR.

Это сообщение отобрражается, если строка не является валидной нотацией CIDR.

netmaskMin

тип: integer по умолчанию: 0

Это ограничение для минимального значения, которое может иметь валидная маска сети.

netmaskMax

тип: string по умолчанию: 32 для IPv4 или 128 для IPv6

Это ограничение для максимального значения, которое может иметь валидная маска сети.

netmaskRangeViolationMessage

тип: string по умолчанию: Значение маски сети должно быть между {{ min }} и {{ max }}.

Это сообщение отображается, есил значение маски сети CIDR больше значения netmaskMax или меньше значения netmaskMin.

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

???????? ????????
{{ min }} ??????????? ????????, ??????? ????? ????? ????? ???? CIDR
{{ max }} ???????????? ????????, ??????? ????? ????? ????? ???? CIDR

payload

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

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

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

version

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

Это определяет как точно валидируется нотация CIDR и может принимать одно из следующих значений:

  • 4: валидирует для нотаций CIDR, которые имеют IPv4;
  • 6: валидирует для нотаций CIDR, которые имеют IPv6;
  • all: валидирует все форматы CIDRты.