Class

Symfony\Component\Validator\Mapping\MemberMetadata

abstract class MemberMetadata extends ElementMetadata implements PropertyMetadataInterface

Stores all metadata needed for validating a class property.

The method of accessing the property's value must be specified by subclasses by implementing the {@link newReflectionMember()} method.

This class supports serialization and cloning.

Properties

Constraint[] $constraints
array $constraintsByGroup
integer $cascadingStrategy The strategy for cascading objects.
integer $traversalStrategy The strategy for traversing traversable objects.
string $class
string $name
string $property

Methods

string[] __sleep()

Returns the names of the properties that should be serialized.

__clone()

Clones this object.

from GenericMetadata
GenericMetadata addConstraint(Constraint $constraint)

Adds a constraint.

GenericMetadata addConstraints(array $constraints)

Adds an list of constraints.

from GenericMetadata
Constraint[] getConstraints()

Returns all constraints of this element.

from GenericMetadata
Boolean hasConstraints()

Returns whether this element has any constraints.

from GenericMetadata
Constraint[] findConstraints(string $group)

Returns the constraints of the given group and global ones (* group).

from GenericMetadata
integer getCascadingStrategy()

Returns the strategy for cascading objects.

from GenericMetadata
integer getTraversalStrategy()

Returns the strategy for traversing traversable objects.

from GenericMetadata
accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath, $propagatedGroup = null)

Exists for compatibility with the deprecated {@link Symfony\Component\Validator\MetadataInterface}.

__construct(string $class, string $name, string $property)

Constructor.

string getName()

Returns the name of the member.

string getClassName()

Returns the name of the backing PHP class.

string getPropertyName()

Returns the name of the property.

Boolean isPublic(object|string $objectOrClassName)

Returns whether this member is public.

Boolean isProtected(object|string $objectOrClassName)

Returns whether this member is protected

Boolean isPrivate(object|string $objectOrClassName)

Returns whether this member is private.

Boolean isCascaded()

Returns whether objects stored in this member should be validated.

Boolean isCollectionCascaded()

Returns whether arrays or traversable objects stored in this member should be traversed and validated in each entry.

Boolean isCollectionCascadedDeeply()

Returns whether arrays or traversable objects stored in this member should be traversed recursively for inner arrays/traversable objects.

ReflectionMethod|ReflectionProperty getReflectionMember(object|string $objectOrClassName)

Returns the reflection instance for accessing the member's value.

Details

at line 112
public string[] __sleep()

Returns the names of the properties that should be serialized.

Return Value

string[]

in GenericMetadata at line 97
public __clone()

Clones this object.

at line 95
public GenericMetadata addConstraint(Constraint $constraint)

Adds a constraint.

If the constraint {@link Valid} is added, the cascading strategy will be changed to {@link CascadingStrategy::CASCADE}. Depending on the properties $traverse and $deep of that constraint, the traversal strategy will be set to one of the following:

Parameters

Constraint $constraint The constraint to add

Return Value

GenericMetadata This object

Exceptions

ConstraintDefinitionException When trying to add the {@link Traverse} constraint

in GenericMetadata at line 173
public GenericMetadata addConstraints(array $constraints)

Adds an list of constraints.

Parameters

array $constraints The constraints to add

Return Value

GenericMetadata This object

in GenericMetadata at line 187
public Constraint[] getConstraints()

Returns all constraints of this element.

Return Value

Constraint[] A list of Constraint instances

in GenericMetadata at line 197
public Boolean hasConstraints()

Returns whether this element has any constraints.

Return Value

Boolean

in GenericMetadata at line 210
public Constraint[] findConstraints(string $group)

Returns the constraints of the given group and global ones (* group).

Parameters

string $group The group name

Return Value

Constraint[] An list of all the Constraint instances belonging to the group

in GenericMetadata at line 220
public integer getCascadingStrategy()

Returns the strategy for cascading objects.

Return Value

integer The cascading strategy

in GenericMetadata at line 228
public integer getTraversalStrategy()

Returns the strategy for traversing traversable objects.

Return Value

integer The traversal strategy

at line 83
public accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath, $propagatedGroup = null)

Exists for compatibility with the deprecated {@link Symfony\Component\Validator\MetadataInterface}.

Should not be used.

Parameters

ValidationVisitorInterface $visitor The visitor implementing the validation logic
mixed $value The value to validate
string|string[] $group The validation group to validate in
string $propertyPath The current property path in the validation graph
$propagatedGroup

Exceptions

BadMethodCallException

at line 71
public __construct(string $class, string $name, string $property)

Constructor.

Parameters

string $class The name of the class this member is defined on
string $name The name of the member
string $property The property the member belongs to

at line 126
public string getName()

Returns the name of the member.

Return Value

string

at line 134
public string getClassName()

Returns the name of the backing PHP class.

Return Value

string The name of the backing class.

at line 142
public string getPropertyName()

Returns the name of the property.

Return Value

string The property name.

at line 154
public Boolean isPublic(object|string $objectOrClassName)

Returns whether this member is public.

Parameters

object|string $objectOrClassName The object or the class name

Return Value

Boolean

at line 166
public Boolean isProtected(object|string $objectOrClassName)

Returns whether this member is protected

Parameters

object|string $objectOrClassName The object or the class name

Return Value

Boolean

at line 178
public Boolean isPrivate(object|string $objectOrClassName)

Returns whether this member is private.

Parameters

object|string $objectOrClassName The object or the class name

Return Value

Boolean

at line 191
public Boolean isCascaded()

Returns whether objects stored in this member should be validated.

Return Value

Boolean

at line 205
public Boolean isCollectionCascaded()

Returns whether arrays or traversable objects stored in this member should be traversed and validated in each entry.

Return Value

Boolean

at line 219
public Boolean isCollectionCascadedDeeply()

Returns whether arrays or traversable objects stored in this member should be traversed recursively for inner arrays/traversable objects.

Return Value

Boolean

at line 231
public ReflectionMethod|ReflectionProperty getReflectionMember(object|string $objectOrClassName)

Returns the reflection instance for accessing the member's value.

Parameters

object|string $objectOrClassName The object or the class name

Return Value

ReflectionMethod|ReflectionProperty The reflection instance