Класс ClassMetadata
класс ClassMetadata расширяет ElementMetadata и реализует ClassMetadataInterface
Стандартная реализация {@link ClassMetadataInterface}.
Этот класс поддерживает сериализацию и клонирование.
Свойства
| Constraint[] | $constraints | из GenericMetadata | |
| массив | $constraintsByGroup | из GenericMetadata | |
| int | $cascadingStrategy | Стратегия для каскадного обработки объектов. | из GenericMetadata |
| int | $traversalStrategy | Стратегия для обработки перебираемых объектов. | |
| строка | $name | ||
| строка | $defaultGroup | ||
| MemberMetadata[] | $members | ||
| PropertyMetadata[] | $properties | ||
| GetterMetadata[] | $getters | ||
| массив | $groupSequence | ||
| bool | $groupSequenceProvider |
Методы
| массив строк | __sleep() Возвращает имена свойств, которые должны быть сериализованы. | |
| __clone() Клонирует этот объект. | из GenericMetadata | |
| $this | addConstraint(Constraint $constraint) Добавляет ограничение. | |
| $this | addConstraints(массив $constraints) Добавляет список ограничений. | из GenericMetadata |
| Constraint[] | getConstraints() Возвращает все ограничения этого элемента. | из GenericMetadata |
| bool | hasConstraints() Возвращает, есть ли у этого элемента какие-либо ограничения. | из GenericMetadata |
| Constraint[] | findConstraints(строка $group) Возвращает все ограничения для заданной группы валидации. | из GenericMetadata |
| int | getCascadingStrategy() Узлы классов никогда не обрабатываются каскадно. | |
| int | getTraversalStrategy() Возвращает стратегию для обработки перебираемых объектов. | из GenericMetadata |
| accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath, $propagatedGroup = null) устарело Существует для совместимости с устаревшим {@link Symfony\Component\Validator\MetadataInterface}. | ||
| __construct(строка $class) Создаёт метаданные для заданного класса. | ||
| строка | getClassName() Возвращает имя базового PHP класса. | |
| строка | getDefaultGroup() Возвращает имя группы по умолчанию для этого класса. | |
| $this | addPropertyConstraint(строка $property, Constraint $constraint) Добавляет ограничение к заданному свойству. | |
| $this | addPropertyConstraints(строка $property, массив $constraints) | |
| $this | addGetterConstraint(строка $property, Constraint $constraint) Добавляет ограничение к геттеру заданного свойства. | |
| $this | addGetterMethodConstraint(строка $property, строка $method, Constraint $constraint) Добавляет ограничение к геттеру заданного свойства. | |
| $this | addGetterConstraints(строка $property, массив $constraints) | |
| $this | addGetterMethodConstraints(строка $property, строка $method, массив $constraints) | |
| mergeConstraints(ClassMetadata $source) Объединяет ограничения заданных метаданных в этот объект. | ||
| bool | hasMemberMetadatas(строка $property) устарело Возвращает true, если метаданные членов присутствуют для данного свойства. | |
| MemberMetadata[] | getMemberMetadatas(строка $property) устарело Возвращает все экземпляры метаданных членов, описывающие данное свойство. | |
| bool | hasPropertyMetadata(строка $property) Проверяет, прикреплены ли какие-либо метаданные к данному свойству. | |
| PropertyMetadataInterface[] | getPropertyMetadata(строка $property) Возвращает все экземпляры метаданных для данного имени свойства. | |
| массив строк | getConstrainedProperties() Возвращает имена всех ограниченных свойств. | |
| $this | setGroupSequence(массив $groupSequence) Устанавливает последовательность групп по умолчанию для этого класса. | |
| bool | hasGroupSequence() Возвращает, переопределена ли группа "Default" последовательностью групп. | |
| GroupSequence|null | getGroupSequence() Возвращает последовательность групп, которая переопределяет группу "Default" для этого класса. | |
| ReflectionClass | getReflectionClass() Возвращает экземпляр ReflectionClass для этого класса. | |
| setGroupSequenceProvider(bool $active) Устанавливает, нужно ли использовать поставщика последовательности групп. | ||
| bool | isGroupSequenceProvider() Возвращает, переопределена ли группа "Default" динамической последовательностью групп, полученной от валидируемых объектов. |
Подробности
string[] __sleep()
Возвращает имена свойств, которые должны быть сериализованы.
Значение возврата
| string[] |
__clone()
Клонирует этот объект.
$this addConstraint(Constraint $constraint)
Добавляет ограничение.
Если ограничение {@link Valid} добавлено, стратегия каскадирования будет изменена на {@link CascadingStrategy::CASCADE}. В зависимости от свойств $traverse и $deep этого ограничения, стратегия обхода будет установлена на одну из следующих:
- {@link TraversalStrategy::IMPLICIT}, если $traverse включен и $deep включен
- {@link TraversalStrategy::IMPLICIT} | {@link TraversalStrategy::STOP_RECURSION}, если $traverse включен, но $deep выключен
- {@link TraversalStrategy::NONE}, если $traverse выключен
Параметры
| Constraint | $constraint |
Значение возврата
| $this |
Исключения
| ConstraintDefinitionException | При попытке добавить ограничение {@link Traverse} |
$this addConstraints(array $constraints)
Добавляет список ограничений.
Параметры
| array | $constraints | Список ограничений для добавления |
Значение возврата
| $this |
Constraint[] getConstraints()
Возвращает все ограничения этого элемента.
Значение возврата
| Constraint[] | Список экземпляров Constraint |
bool hasConstraints()
Возвращает, имеет ли этот элемент какие-либо ограничения.
Значение возврата
| bool |
Constraint[] findConstraints(string $group)
Возвращает все ограничения для заданной группы валидации.
Параметры
| string | $group | Группа валидации |
Значение возврата
| Constraint[] | Список экземпляров ограничений |
int getCascadingStrategy()
Узлы класса никогда не каскадируются.
{@inheritdoc}
Значение возврата
| int | Стратегия каскадирования |
int getTraversalStrategy()
Возвращает стратегию обхода для обходимых объектов.
Значение возврата
| int | Стратегия обхода |
accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath, $propagatedGroup = null) deprecated
deprecated
Существует для совместимости с устаревшим {@link Symfony\Component\Validator\MetadataInterface}.
Не следует использовать.
Реализовано для обратной совместимости с Symfony < 2.5.
Параметры
| ValidationVisitorInterface | $visitor | Посетитель, реализующий логику валидации |
| mixed | $value | Значение для проверки |
| string|string[] | $group | Группа валидации для проверки |
| string | $propertyPath | Текущий путь к свойству в графе валидации |
| $propagatedGroup |
Исключения
| BadMethodCallException |
__construct(string $class)
Создает метаданные для заданного класса.
Параметры
| string | $class |
string getClassName()
Возвращает имя базового класса PHP.
Значение возврата
| string | Имя базового класса |
string getDefaultGroup()
Возвращает имя группы по умолчанию для этого класса.
Для каждого класса группа "Default" является псевдонимом для группы "
Если класс определяет последовательность групп, валидация класса в "Default" будет валидировать последовательность групп. Ограничения, назначенные "Default", всё ещё могут быть проверены путём валидации класса в "
Значение возврата
| string | Имя группы по умолчанию |
$this addPropertyConstraint(string $property, Constraint $constraint)
Добавляет ограничение к указанному свойству.
Параметры
| string | $property | Имя свойства |
| Constraint | $constraint | Ограничение |
Значение возврата
| $this |
$this addPropertyConstraints(string $property, array $constraints)
Параметры
| string | $property | |
| array | $constraints |
Значение возврата
| $this |
$this addGetterConstraint(string $property, Constraint $constraint)
Добавляет ограничение к геттеру указанного свойства.
Предполагается, что имя геттера — это имя свойства с заглавной первой буквой и префиксом «get» или «is».
Параметры
| string | $property | Имя свойства |
| Constraint | $constraint | Ограничение |
Значение возврата
| $this |
$this addGetterMethodConstraint(string $property, string $method, Constraint $constraint)
Добавляет ограничение к геттеру указанного свойства.
Параметры
| string | $property | Имя свойства |
| string | $method | Имя метода геттера |
| Constraint | $constraint | Ограничение |
Значение возврата
| $this |
$this addGetterConstraints(string $property, array $constraints)
Параметры
| string | $property | |
| array | $constraints |
Значение возврата
| $this |
$this addGetterMethodConstraints(string $property, string $method, array $constraints)
Параметры
| string | $property | |
| string | $method | |
| array | $constraints |
Значение возврата
| $this |
mergeConstraints(ClassMetadata $source)
Объединяет ограничения заданных метаданных в этот объект.
Параметры
| ClassMetadata | $source |
bool hasMemberMetadatas(string $property) deprecated
deprecated
Возвращает true, если метаданные членов присутствуют для данного свойства.
Параметры
| string | $property | Имя свойства |
Значение возврата
| bool |
MemberMetadata[] getMemberMetadatas(string $property) deprecated
deprecated
Возвращает все метаданные членов, описывающие заданный свойство.
Parameters
| string | $property | Имя свойства |
Return Value
| MemberMetadata[] | Массив MemberMetadata |
bool hasPropertyMetadata(string $property)
Проверяет наличие метаданных, прикрепленных к заданному свойству.
Parameters
| string | $property | Имя свойства |
Return Value
| bool |
PropertyMetadataInterface[] getPropertyMetadata(string $property)
Возвращает все экземпляры метаданных для заданного свойства.
Если ваша реализация не поддерживает свойства, просто выбросьте исключение в этом методе (например, BadMethodCallException).
Parameters
| string | $property | Имя свойства |
Return Value
| PropertyMetadataInterface[] | Список экземпляров метаданных. Пустой, если метаданные для свойства отсутствуют. |
string[] getConstrainedProperties()
Возвращает имена всех ограниченных свойств.
Return Value
| string[] | Список имён свойств |
$this setGroupSequence(array $groupSequence)
Устанавливает последовательность групп по умолчанию для этого класса.
Parameters
| array | $groupSequence | Массив имён групп |
Return Value
| $this |
Exceptions
| GroupDefinitionException |
bool hasGroupSequence()
Возвращает значение, показывающее, переопределена ли группа "Default" последовательностью групп.
Если переопределена, вы можете получить последовательность групп с помощью {@link getGroupSequence()}.
Return Value
| bool | Возвращает true, если группа "Default" переопределена |
GroupSequence|null getGroupSequence()
Возвращает последовательность групп, переопределяющую группу "Default" для этого класса.
Return Value
| GroupSequence|null | Последовательность групп или null |
ReflectionClass getReflectionClass()
Возвращает экземпляр ReflectionClass для этого класса.
Return Value
| ReflectionClass |
setGroupSequenceProvider(bool $active)
Устанавливает, следует ли использовать поставщик последовательности групп.
Parameters
| bool | $active |
Exceptions
| GroupDefinitionException |
bool isGroupSequenceProvider()
Возвращает значение, показывающее, переопределена ли группа "Default" динамической последовательностью групп, полученной от валидируемых объектов.
Если этот метод возвращает true, класс должен реализовывать {@link \Symfony\Component\Validator\GroupSequenceProviderInterface}. Этот интерфейс будет использован для получения последовательности групп при валидации объекта этого класса.
Return Value
| bool | Возвращает true, если группа "Default" переопределена динамической последовательностью групп |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/Validator/Mapping/ClassMetadata.html