MemberMetadata
абстрактный класс MemberMetadata расширяет GenericMetadata и реализует PropertyMetadataInterface
Хранит всю метаданные, необходимую для проверки свойства класса.
Способ доступа к значению свойства должен быть указан подклассами путем реализации метода {@link newReflectionMember()}.
Этот класс поддерживает сериализацию и клонирование.
Свойства
| Constraint[] | $constraints | из GenericMetadata | |
| массив | $constraintsByGroup | из GenericMetadata | |
| int | $cascadingStrategy | Стратегия для каскадирования объектов. | из GenericMetadata |
| int | $traversalStrategy | Стратегия для обхода итерируемых объектов. | из GenericMetadata |
| $class | |||
| $name | |||
| $property |
Методы
| массив строк | __sleep() Возвращает имена свойств, которые должны быть сериализованы. | |
| __clone() Клонирует этот объект. | из GenericMetadata | |
| $this | addConstraint(Constraint $constraint) Добавляет ограничение. | |
| $this | addConstraints(массив $constraints) Добавляет список ограничений. | из GenericMetadata |
| Constraint[] | getConstraints() Возвращает все ограничения данного элемента. | из GenericMetadata |
| bool | hasConstraints() Возвращает, имеет ли этот элемент какие-либо ограничения. | из GenericMetadata |
| Constraint[] | findConstraints(строка $group) Возвращает все ограничения для заданной группы проверки. | из GenericMetadata |
| int | getCascadingStrategy() Возвращает стратегию каскадирования объектов. | из GenericMetadata |
| int | getTraversalStrategy() Возвращает стратегию обхода итерируемых объектов. | из GenericMetadata |
| __construct(строка $class, строка $name, строка $property) | ||
| строка | getName() Возвращает имя члена. | |
| getClassName() {@inheritdoc} | ||
| строка | getPropertyName() Возвращает имя свойства. | |
| bool | isPublic(объект|строка $objectOrClassName) Возвращает, является ли этот член общедоступным. | |
| bool | isProtected(объект|строка $objectOrClassName) Возвращает, является ли этот член защищенным. | |
| bool | isPrivate(объект|строка $objectOrClassName) Возвращает, является ли этот член закрытым. | |
| ReflectionMethod|ReflectionProperty | getReflectionMember(объект|строка $objectOrClassName) Возвращает отраженный экземпляр для доступа к значению члена. | |
| ReflectionMethod|ReflectionProperty | newReflectionMember(объект|строка $objectOrClassName) Создает новый отраженный экземпляр для доступа к значению члена. |
Подробности
string[] __sleep()
Возвращает имена свойств, которые должны быть сериализованы.
Результат
| string[] |
__clone()
Клонирует этот объект.
$this addConstraint(Constraint $constraint)
Добавляет ограничение.
Если добавлено ограничение {@link Valid}, стратегия каскадирования будет изменена на {@link CascadingStrategy::CASCADE}. В зависимости от свойства $traverse данного ограничения, стратегия обхода будет установлена на одну из следующих:
- {@link TraversalStrategy::IMPLICIT}, если $traverse включено
- {@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()
Возвращает стратегию каскадирования объектов.
Результат
| int | Стратегия каскадирования |
int getTraversalStrategy()
Возвращает стратегию обхода перебираемых объектов.
Результат
| int | Стратегия обхода |
__construct(string $class, string $name, string $property)
Параметры
| string | $class | Имя класса, в котором определен этот член |
| string | $name | Имя члена |
| string | $property | Свойство, к которому принадлежит член |
string getName()
Возвращает имя члена.
Результат
| string |
getClassName()
{@inheritdoc}
string getPropertyName()
Возвращает имя свойства.
Результат
| string | Имя свойства |
bool isPublic(object|string $objectOrClassName)
Возвращает, является ли этот член общедоступным.
Параметры
| object|string | $objectOrClassName | Объект или имя класса |
Результат
| bool |
bool isProtected(object|string $objectOrClassName)
Возвращает, является ли этот член защищённым.
Параметры
| object|string | $objectOrClassName | Объект или имя класса |
Результат
| bool |
bool isPrivate(object|string $objectOrClassName)
Возвращает, является ли этот член закрытым.
Параметры
| object|string | $objectOrClassName | Объект или имя класса |
Результат
| bool |
ReflectionMethod|ReflectionProperty getReflectionMember(object|string $objectOrClassName)
Возвращает экземпляр reflection для доступа к значению члена.
Параметры
| object|string | $objectOrClassName | Объект или имя класса |
Результат
| ReflectionMethod|ReflectionProperty | Экземпляр reflection |
abstract protected ReflectionMethod|ReflectionProperty newReflectionMember(object|string $objectOrClassName)
Создает новый экземпляр reflection для доступа к значению члена.
Должно быть реализовано подклассами.
Параметры
| object|string | $objectOrClassName | Объект или имя класса |
Результат
| ReflectionMethod|ReflectionProperty | Экземпляр reflection |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/Validator/Mapping/MemberMetadata.html