class PropertyAccessor implements PropertyAccessorInterface
Default implementation of {@link PropertyAccessorInterface}.
VALUE | |
IS_REF | |
IS_REF_CHAINED | |
ACCESS_HAS_PROPERTY | |
ACCESS_TYPE | |
ACCESS_NAME | |
ACCESS_REF | |
ACCESS_ADDER | |
ACCESS_REMOVER | |
ACCESS_TYPE_METHOD | |
ACCESS_TYPE_PROPERTY | |
ACCESS_TYPE_MAGIC | |
ACCESS_TYPE_ADDER_AND_REMOVER | |
ACCESS_TYPE_NOT_FOUND |
__construct($magicCall = false, $throwExceptionOnInvalidIndex = false) Should not be used by application code. | ||
mixed | getValue(object|array $objectOrArray, string|PropertyPathInterface $propertyPath) Returns the value at the end of the property path of the object graph. | |
setValue(object|array $objectOrArray, string|PropertyPathInterface $propertyPath, mixed $value) Sets the value at the end of the property path of the object graph. | ||
bool | isReadable(object|array $objectOrArray, string|PropertyPathInterface $propertyPath) Returns whether a property path can be read from an object graph. | |
bool | isWritable(object|array $objectOrArray, string|PropertyPathInterface $propertyPath) Returns whether a value can be written at a given property path. |
Should not be used by application code.
Use {@link PropertyAccess::createPropertyAccessor()} instead.
Returns the value at the end of the property path of the object graph.
Example:
use Symfony\Component\PropertyAccess\PropertyAccess;
$propertyAccessor = PropertyAccess::createPropertyAccessor();
echo $propertyAccessor->getValue($object, 'child.name);
// equals echo $object->getChild()->getName();
This method first tries to find a public getter for each property in the path. The name of the getter must be the camel-cased property name prefixed with "get", "is", or "has".
If the getter does not exist, this method tries to find a public property. The value of the property is then returned.
If none of them are found, an exception is thrown.
Sets the value at the end of the property path of the object graph.
Example:
use Symfony\Component\PropertyAccess\PropertyAccess;
$propertyAccessor = PropertyAccess::createPropertyAccessor();
echo $propertyAccessor->setValue($object, 'child.name', 'Fabien');
// equals echo $object->getChild()->setName('Fabien');
This method first tries to find a public setter for each property in the path. The name of the setter must be the camel-cased property name prefixed with "set".
If the setter does not exist, this method tries to find a public property. The value of the property is then changed.
If neither is found, an exception is thrown.
Returns whether a property path can be read from an object graph.
Whenever this method returns true, {@link getValue()} is guaranteed not to throw an exception when called with the same arguments.
Returns whether a value can be written at a given property path.
Whenever this method returns true, {@link setValue()} is guaranteed not to throw an exception when called with the same arguments.
© 2004–2016 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.8/Symfony/Component/PropertyAccess/PropertyAccessor.html