All

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

All

При застосуванні до масиву (або траверсованого обʼєкта), це обмеження дозволяє вам застосовувати колекцію обмежень до кожного елемента масиву.

?????????????? ?? ??????????? ??? ??????
???? All
????????? AllValidator

Базове використання

Уявіть, що у вас є масив рядків, і ви хочете валідувати кожний запис у цьому масиві:

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

use Symfony\Component\Validator\Constraints as Assert;

// ВАЖЛИВО: вкладені атрибути вимагають PHP 8.1 або вище
class User
{
    #[Assert\All([
        new Assert\NotBlank,
        new Assert\Length(min: 5),
    ])]
    protected $favoriteColors = [];
}

Тепер, кожний запис у масиві favoriteColors буде валідовано, щоб він не був порожнім і мав щонайменше 5 символів.

Опції

constraints

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

Ця обовʼязкова опція - це масив обмежень валідації, які ви хочете застосувати до кожного елемента основного масиву.

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

groups

тип: array | string

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

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

payload

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

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

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