PropertyMetadata
class PropertyMetadata extends MemberMetadata
Хранит всю метаданные, необходимую для валидации свойства класса.
Значение свойства извлекается путём прямого доступа к свойству. Свойство будет обращаться с помощью рефлексии, поэтому поддерживается доступ к закрытым и защищённым свойствам.
Этот класс поддерживает сериализацию и клонирование.
Свойства
| Constraint[] | $constraints | из GenericMetadata | |
| array | $constraintsByGroup | из GenericMetadata | |
| int | $cascadingStrategy | Стратегия для каскадного валидирования объектов. | из GenericMetadata |
| int | $traversalStrategy | Стратегия для обхода перебираемых объектов. | из GenericMetadata |
| string | $class | из MemberMetadata | |
| string | $name | из MemberMetadata | |
| string | $property | из MemberMetadata |
Методы
| string[] | __sleep() Возвращает имена свойств, которые должны быть сериализованы. | из MemberMetadata |
| __clone() Клонирует этот объект. | из GenericMetadata | |
| $this | addConstraint(Constraint $constraint) Добавляет ограничение. | из MemberMetadata |
| $this | addConstraints(array $constraints) Добавляет список ограничений. | из GenericMetadata |
| Constraint[] | getConstraints() Возвращает все ограничения этого элемента. | из GenericMetadata |
| bool | hasConstraints() Возвращает, есть ли у этого элемента какие-либо ограничения. | из GenericMetadata |
| Constraint[] | findConstraints(string $group) Возвращает все ограничения для заданной группы валидации. | из GenericMetadata |
| int | getCascadingStrategy() Возвращает стратегию для каскадного валидирования объектов. | из GenericMetadata |
| int | getTraversalStrategy() Возвращает стратегию для обхода перебираемых объектов. | из GenericMetadata |
| accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath, $propagatedGroup = null) устарело Существует для совместимости с устаревшим {@link Symfony\Component\Validator\MetadataInterface}. | из MemberMetadata | |
| __construct(string $class, string $name) | ||
| string | getName() Возвращает имя члена. | из MemberMetadata |
| string | getClassName() Возвращает имя поддерживаемого PHP класса. | из MemberMetadata |
| string | getPropertyName() Возвращает имя свойства. | из MemberMetadata |
| bool | isPublic(object|string $objectOrClassName) Возвращает, является ли этот член публичным. | из MemberMetadata |
| bool | isProtected(object|string $objectOrClassName) Возвращает, является ли этот член защищённым. | из MemberMetadata |
| bool | isPrivate(object|string $objectOrClassName) Возвращает, является ли этот член закрытым. | из MemberMetadata |
| bool | isCascaded() устарело Возвращает, должны ли валидироваться объекты, хранящиеся в этом члене. | из MemberMetadata |
| bool | isCollectionCascaded() устарело Возвращает, должны ли массивы или перебираемые объекты, хранящиеся в этом члене, быть обработаны и проверены в каждом элементе. | из MemberMetadata |
| bool | isCollectionCascadedDeeply() устарело Возвращает, должны ли массивы или перебираемые объекты, хранящиеся в этом члене, быть рекурсивно обработаны для вложенных массивов/перебираемых объектов. | из MemberMetadata |
| ReflectionMethod|ReflectionProperty | getReflectionMember(object|string $objectOrClassName) Возвращает отражающий экземпляр для доступа к значению члена. | из MemberMetadata |
| mixed | getPropertyValue($object) Извлекает значение свойства из заданного контейнера. |
Подробности
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()
Возвращает стратегию для каскадирования объектов.
Значение возврата
| int | Стратегия каскадирования |
int getTraversalStrategy()
Возвращает стратегию для обхода перебираемых объектов.
Значение возврата
| int | Стратегия обхода |
accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath, $propagatedGroup = null) устаревший
устаревший
Существует для совместимости с устаревшим {@link Symfony\Component\Validator\MetadataInterface}.
Не следует использовать.
Реализовано для обратной совместимости с Symfony < 2.5.
Параметры
| ValidationVisitorInterface | $visitor | Визитор, реализующий логику валидации |
| mixed | $value | Значение для валидации |
| string|string[] | $group | Группа валидации для проверки |
| string | $propertyPath | Текущий путь свойства в графе валидации |
| $propagatedGroup |
Исключения
| BadMethodCallException |
__construct(string $class, string $name)
Параметры
| string | $class | Имя класса, в котором определён этот член |
| string | $name | Имя члена |
Исключения
| ValidatorException |
string getName()
Возвращает имя члена.
Значение возврата
| string |
string getClassName()
Возвращает имя базового PHP-класса.
Значение возврата
| string | Имя базового класса |
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 |
bool isCascaded() устаревший
устаревший
Возвращает значение, указывающее, должны ли объекты, хранящиеся в этом члене, быть проверены.
Значение возврата
| bool |
bool isCollectionCascaded() устаревший
устаревший
Возвращает значение, указывающее, должны ли массивы или перебираемые объекты, хранящиеся в этом члене, быть обработаны и проверены в каждом элементе.
Значение возврата
| bool |
bool isCollectionCascadedDeeply() устаревший
устаревший
Возвращает значение, указывающее, должны ли массивы или перебираемые объекты, хранящиеся в этом члене, быть рекурсивно обработаны для внутренних массивов/перебираемых объектов.
Значение возврата
| bool |
ReflectionMethod|ReflectionProperty getReflectionMember(object|string $objectOrClassName)
Возвращает отражённый экземпляр для доступа к значению члена.
Параметры
| object|string | $objectOrClassName | Объект или имя класса |
Значение возврата
| ReflectionMethod|ReflectionProperty | Экземпляр отражения |
mixed getPropertyValue($object)
Извлекает значение свойства из заданного контейнера.
Параметры
| $object |
Значение возврата
| mixed | Значение свойства |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/Validator/Mapping/PropertyMetadata.html