IdenticalTo

Дата оновлення перекладу 2023-09-25

IdenticalTo

Валідує, що значення ідентичне іншому значенню, визначеному в опціях. Щоб форсувати, що значення не ідентичне, див. NotIdenticalTo.

Caution

Це обмеження порівнюж, використовуючи ===, тому 3 та "3" не вважаються рівними. Використайте EqualTo, щоб порівнювати з ==.

????????????? ?? ??????????? ??? ??????
???? IdenticalTo
????????? IdenticalToValidator

Базове застосування

Наступні обмеження гарантують, що:

  • firstName класу Person дорівнює Mary та є рядком
  • age дорівнює 20 та є типом цілого числа
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// src/Entity/Person.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;

class Person
{
    #[Assert\IdenticalTo('Mary')]
    protected string $firstName;

    #[Assert\IdenticalTo(
        value: 20,
    )]
    protected int $age;
}

Опції

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

groups

тип: array | string за замовчуванням: null

Визначає групу або групи валідації обмеження. Прочитайте більше про групи валідації.

message

тип: string за замовчуванням: Це значення має бути ідентично {{ compared_value_type }} {{ compared_value }}.

Це повідомлення, яке буде відображено, якщо значення не є ідентичним.

Ви можете використати наступні параметри у цьому повідомленні:

???????? ????
{{ compared_value }} ????????? ????????
{{ compared_value_type }} ?????????? ??? ????????
{{ value }} ??????? (?????????) ????????

Дата оновлення перекладу 2024-05-29

payload

тип: mixed за замовчуванням: null

Ця опція може бути використана, щоб додати довільні дані, специфічні для домену, до обмеження. Сконфігуроване корисне навантаження не використовується компонентом Validator, але його обробка повністю залежить від вас.

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

Дата оновлення перекладу 2023-09-25

propertyPath

тип: string за замовчуванням: null

Визначає властивість обʼєкта, чиє значення використовується для проведенння порівняння.

Наприклад, якщо ви хочете порівняти властивість $endDate якихось обʼєктів із властивістю $startDate того ж обʼєкта, використайте propertyPath="startDate"
в обмеженні порівняння $endDate.

Tip

При використанні цієї опції, її значення доступне у повідомленнях помилки як заповнювач {{ compared_value_path }}. Хоча воно не призначено для відображення у повідомленнях помилок кінцевим користувачам, це корисно при використанні API для логіки мапування на клієнтській стороні.

Дата оновлення перекладу 2022-12-20

value

тип: mixed [опція за замовчуванням ]

Ця опція обовʼязкова. Вона визначає значення порівняння. Вона може бути рядком, числом або обʼєктом.