Композиция
абстрактный класс Composite расширяет Constraint
Ограничение, составленное из других ограничений.
Вы никогда не должны использовать вложенные экземпляры ограничений где-либо еще, так как их группы адаптируются при передаче в конструктор этого класса.
Если вы хотите создать собственное составное ограничение, расширьте этот класс и позвольте {@link getCompositeOption()} вернуть имя свойства, содержащего вложенные ограничения.
Константы
| DEFAULT_GROUP | Имя группы, присваиваемой всем ограничениям без явной группы. |
| CLASS_CONSTRAINT | Помечает ограничение, которое можно применить к классам. |
| PROPERTY_CONSTRAINT | Помечает ограничение, которое можно применить к свойствам. |
Свойства
| static protected | $errorNames | Сопоставление кодов ошибок с именами их констант. | из Constraint |
| mixed | $payload | Данные, специфичные для домена, прикрепленные к ограничению. | из Constraint |
| array | $groups | Группы, к которым относится ограничение | из Constraint |
Методы
| static string | getErrorName(string $errorCode) Возвращает имя данного кода ошибки. | из Constraint |
| __construct(mixed $options = null) Инициализирует ограничение параметрами. | ||
| __set(string $option, mixed $value) Устанавливает значение отложенно инициализированного параметра. | из Constraint | |
| mixed | __get(string $option) Возвращает значение отложенно инициализированного параметра. | из Constraint |
| bool | __isset(string $option) | из Constraint |
| addImplicitGroupName(string $group) Добавляет заданную группу, если это ограничение находится в группе По умолчанию. | ||
| string | getDefaultOption() Возвращает имя параметра по умолчанию. | из Constraint |
| array | getRequiredOptions() Возвращает имена необходимых параметров. | из Constraint |
| string | validatedBy() Возвращает имя класса, который валидирует это ограничение. | из Constraint |
| string|array | getTargets() Возвращает, можно ли применить ограничение к классам, свойствам или обоим. | из Constraint |
| array | __sleep() Оптимизирует сериализованное значение для минимизации занимаемого места. | из Constraint |
| string | getCompositeOption() Возвращает имя свойства, содержащего вложенные ограничения. | |
| initializeNestedConstraints() Инициализирует вложенные ограничения. |
Подробности
static строка getErrorName(строка $errorCode)
Возвращает имя заданного кода ошибки.
Параметры
| строка | $errorCode | Код ошибки |
Значение возврата
| строка | Имя кода ошибки |
Исключения
| InvalidArgumentException | Если код ошибки не существует |
__construct(смешанный $options = null)
Инициализирует ограничение параметрами.
Вы должны передать ассоциативный массив. Ключи должны быть именами существующих свойств в этом классе. Значения должны быть значением для этих свойств.
В качестве альтернативы вы можете переопределить метод getDefaultOption(), чтобы вернуть имя существующего свойства. Если не передан ассоциативный массив, это свойство устанавливается вместо него.
Вы можете принудительно установить определённые параметры, переопределив getRequiredOptions(), чтобы вернуть имена этих параметров. Если какой-либо параметр не установлен здесь, выбрасывается исключение.
Параметры
| смешанный | $options | Параметры (в виде ассоциативного массива) или значение для параметра по умолчанию (любой другой тип) |
Исключения
| InvalidOptionsException | При передаче имён несуществующих параметров |
| MissingOptionsException | Когда вы не передаёте ни одного из параметров, возвращённых getRequiredOptions() |
| ConstraintDefinitionException | Когда вы не передаёте ассоциативный массив, но getDefaultOption() возвращает null |
__set(строка $option, смешанный $value)
Устанавливает значение параметра, инициализированного по требованию.
Соответствующие свойства добавляются в объект при первом доступе. Таким образом, этот метод будет вызываться не более одного раза на экземпляр ограничения и имя параметра.
Параметры
| строка | $option | Имя параметра |
| смешанный | $value | Значение для установки |
Исключения
| InvalidOptionsException | Если задано неверное имя параметра |
смешанный __get(строка $option)
Возвращает значение параметра, инициализированного по требованию.
Соответствующие свойства добавляются в объект при первом доступе. Таким образом, этот метод будет вызываться не более одного раза на экземпляр ограничения и имя параметра.
Параметры
| строка | $option | Имя параметра |
Значение возврата
| смешанный | Значение параметра |
Исключения
| InvalidOptionsException | Если задано неверное имя параметра |
bool __isset(строка $option)
Параметры
| строка | $option | Имя параметра |
Значение возврата
| bool |
addImplicitGroupName(строка $group)
Добавляет заданную группу, если это ограничение находится в группе по умолчанию.
Параметры
| строка | $group |
строка getDefaultOption()
Возвращает имя параметра по умолчанию.
Переопределите этот метод, чтобы определить параметр по умолчанию.
Значение возврата
| строка |
См. также
| __construct() |
массив getRequiredOptions()
Возвращает имя обязательных параметров.
Переопределите этот метод, если вы хотите определить обязательные параметры.
Значение возврата
| массив |
См. также
| __construct() |
строка validatedBy()
Возвращает имя класса, который валидирует это ограничение.
По умолчанию это полное имя класса ограничения, дополненное "Validator". Вы можете переопределить этот метод, чтобы изменить это поведение.
Значение возврата
| строка |
строка|массив getTargets()
Возвращает, может ли ограничение быть применено к классам, свойствам или обоим.
Этот метод должен возвращать одну или несколько констант Constraint::CLASS_CONSTRAINT и Constraint::PROPERTY_CONSTRAINT.
Значение возврата
| строка|массив | Одно или несколько значений констант |
массив __sleep()
Оптимизирует сериализованное значение для минимизации занимаемого места.
Значение возврата
| массив | Свойства для сериализации |
abstract protected строка getCompositeOption()
Возвращает имя свойства, содержащего вложенные ограничения.
Значение возврата
| строка | Имя свойства |
protected initializeNestedConstraints()
Инициализирует вложенные ограничения.
Этот метод может быть переопределён в подклассах для очистки вложенных ограничений, переданных в конструктор.
См. также
| Collection::initializeNestedConstraints |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/Validator/Constraints/Composite.html