ValidationVisitorInterface deprecated
интерфейс ValidationVisitorInterface
deprecated
Проверяет значения на соответствие ограничениям, определенным в экземплярах {@link MetadataInterface}.
Этот интерфейс является реализацией паттерна проектирования Visitor. Значение проверяется, сначала передавая его методу {@link validate}. Этот метод определит соответствующий {@link MetadataInterface} для проверки значения. Затем он вызовет метод {@link MetadataInterface::accept} этого метаданных. accept() выполняет два действия:
- Он вызывает {@link visit}, чтобы проверить значение на соответствие ограничениям метаданных.
- Он вызывает accept() для всех вложенных экземпляров метаданных со соответствующими значениями, извлеченными из текущего значения. Например, если текущие метаданные представляют класс, а текущее значение — объект этого класса, метаданные содержат вложенные экземпляры для каждого свойства этого класса. Он перенаправляет вызов этим вложенным метаданным со значениями соответствующих свойств в исходном объекте.
Методы
| validate(mixed $value, string $group, string $propertyPath, bool $traverse = false, bool $deep = false) Проверяет значение. | ||
| visit(MetadataInterface $metadata, mixed $value, string $group, string $propertyPath) Проверяет значение на соответствие ограничениям, определенным в некоторых метаданных. |
Подробности
validate(mixed $value, string $group, string $propertyPath, bool $traverse = false, bool $deep = false)
Проверяет значение.
Если значение является массивом или итерируемым объектом, вы можете установить параметр $traverse в true, чтобы пройти по коллекции и проверить каждый элемент. Если эти элементы снова могут быть коллекциями, и вы хотите рекурсивно пройти по ним, установите параметр $deep также в true.
Если вы установите $traversable в true, посетитель все равно попытается найти метаданные для коллекции и проверить ее ограничения. Если такие метаданные не найдены, посетитель проигнорирует это и только итерирует коллекцию.
Если вы не установите $traversable в true, и посетитель не найдет метаданных для данного значения, он завершится с исключением.
Параметры
| mixed | $value | Значение для проверки. |
| string | $group | Группа проверки. |
| string | $propertyPath | Текущий путь к свойству в графе проверки. |
| bool | $traverse | Нужно ли пройти по значению, если оно итерируемое. |
| bool | $deep | Нужно ли рекурсивно пройти по вложенным итерируемым значениям. |
Исключения
| NoSuchMetadataException | Если метаданные для данного значения не найдены. |
visit(MetadataInterface $metadata, mixed $value, string $group, string $propertyPath)
Проверяет значение на соответствие ограничениям, определенным в некоторых метаданных.
Этот метод реализует паттерн проектирования Visitor. См. также {@link ValidationVisitorInterface}.
Параметры
| MetadataInterface | $metadata | Метаданные, содержащие ограничения. |
| mixed | $value | Значение для проверки. |
| string | $group | Группа проверки. |
| string | $propertyPath | Текущий путь к свойству в графе проверки. |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.1/Symfony/Component/Validator/ValidationVisitorInterface.html