ПоследовательностьГрупп
класс ПоследовательностьГрупп
Последовательность групп валидации.
При валидации последовательности групп, каждая группа будет валидироваться только в том случае, если все предыдущие группы в последовательности прошли успешно. Например:
$validator->validate($address, null, new GroupSequence(array('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.1/Symfony/Component/Validator/Constraints/GroupSequence.html