ПоследовательностьГрупп
класс ПоследовательностьГрупп
Последовательность групп валидации.
При валидации последовательности групп каждая группа будет валидироваться только в случае успешной валидации всех предыдущих групп в последовательности. Например:
$validator->validate($address, null, new GroupSequence('Basic', 'Strict'));
На первом шаге будут валидироваться все ограничения, относящиеся к группе «Basic». Если ни одно из ограничений не завершится ошибкой, валидатор проверит ограничения в группе «Strict». Это полезно, например, если «Strict» содержит дорогостоящие проверки, требующие большого количества ЦП или медленных внешних служб. Обычно вы не хотите выполнять дорогостоящие проверки, если какие-либо из недорогих проверок завершатся ошибкой.
При добавлении метаданных к классу вы можете переопределить группу «Default» этого класса с помощью последовательности групп:
/**
* @GroupSequence({"Address", "Strict"})
*\/
class Address
{
// ...
}
Всякий раз, когда вы валидируете этот объект в группе «Default», будет выполнена валидация последовательности групп:
$validator->validate($address);
Если вы хотите выполнить ограничения группы «Default» для класса с переопределённой группой по умолчанию, передайте имя класса как имя группы вместо этого:
$validator->validate($address, null, "Address")
Свойства
| массив строк|ПоследовательностьГрупп[] | $groups | Группы в последовательности. | |
| строка|ПоследовательностьГрупп | $cascadedGroup | Группа, в которой валидируются связанных объекты при валидации этой последовательности. |
Методы
| __construct(массив $groups) Создаёт новую последовательность групп. |
Подробности
__construct(массив $groups)
Создаёт новую последовательность групп.
Параметры
| массив | $groups | Группы в последовательности |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/Validator/Constraints/GroupSequence.html