Spec-Zone.ru › Symfony 2.7

Последовательность групп

класс GroupSequence реализует ArrayAccess, IteratorAggregate, Countable

Последовательность групп валидации.

При валидации последовательности групп каждая группа будет валидироваться только в том случае, если все предыдущие группы в последовательности успешно прошли валидацию. Например:

$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)

Создает новую последовательность групп.

Traversable getIterator() устаревший

Возвращает итератор для этой группы.

bool offsetExists(int $offset) устаревший

Возвращает, существует ли указанный смещение в последовательности.

строка offsetGet(int $offset) устаревший

Возвращает группу по заданному смещению.

offsetSet(int $offset, строка $value) устаревший

Устанавливает группу по заданному смещению.

offsetUnset(int $offset) устаревший

Удаляет группу по заданному смещению.

int count() устаревший

Возвращает количество групп в последовательности.

Подробности

__construct(массив $groups)

Создает новую последовательность групп.

Параметры

массив $groups Группы в последовательности

Traversable getIterator() устаревший

устаревший

с версии 2.5, будет удалено в 3.0.

Возвращает итератор для этой группы.

Реализовано для обратной совместимости со Symfony < 2.5.

Возвращаемое значение

Traversable Итератор

См. также

\IteratorAggregate::getIterator()

bool offsetExists(int $offset) устаревший

устаревший

с версии 2.5, будет удалено в 3.0.

Возвращает, существует ли указанный смещение в последовательности.

Реализовано для обратной совместимости со Symfony < 2.5.

Параметры

int $offset Смещение

Возвращаемое значение

bool Существует ли смещение

строка offsetGet(int $offset) устаревший

устаревший

с версии 2.5, будет удалено в 3.0.

Возвращает группу по заданному смещению.

Реализовано для обратной совместимости со Symfony < 2.5.

Параметры

int $offset Смещение

Возвращаемое значение

строка Группа по заданному смещению

Исключения

OutOfBoundsException Если объект не существует

offsetSet(int $offset, строка $value) устаревший

устаревший

с версии 2.5, будет удалено в 3.0.

Устанавливает группу по заданному смещению.

Реализовано для обратной совместимости со Symfony < 2.5.

Параметры

int $offset Смещение
строка $value Имя группы

offsetUnset(int $offset) устаревший

устаревший

с версии 2.5, будет удалено в 3.0.

Удаляет группу по заданному смещению.

Реализовано для обратной совместимости со Symfony < 2.5.

Параметры

int $offset Смещение

int count() устаревший

устаревший

с версии 2.5, будет удалено в 3.0.

Возвращает количество групп в последовательности.

Реализовано для обратной совместимости со Symfony < 2.5.

Возвращаемое значение

int Количество групп

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/Validator/Constraints/GroupSequence.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API