PHP Class Symfony\Component\Form\PropertyPath

Author: Bernhard Schussek ([email protected])
Inheritance: implements IteratorAggregate
Afficher le fichier Open project: pmjones/php-framework-benchmarks Class Usage Examples

Protected Properties

Свойство Type Description
$elements array The elements of the property path
$isIndex array Contains a boolean for each property in $elements denoting whether this element is an index. It is a property otherwise.
$length integer The number of elements in the property path
$string string String representation of the path

Méthodes publiques

Méthode Description
__construct ( $propertyPath ) Parses the given property path
__toString ( ) : string Returns the string representation of the property path
getElement ( $index ) : string Returns the element at the given index in the property path
getElements ( ) : array Returns the elements of the property path as array
getIterator ( ) : Symfony\Component\Form\PropertyPathIterator Returns a new iterator for this path
getValue ( object | array $objectOrArray ) : mixed Returns the value at the end of the property path of the object
isIndex ( integer $index ) : boolean Returns whether the element at the given index is an array index
isProperty ( integer $index ) : boolean Returns whether the element at the given index is a property
setValue ( object | array &$objectOrArray, $value ) : mixed Sets the value at the end of the property path of the object

Méthodes protégées

Méthode Description
camelize ( $property )
readProperty ( object $object, integer $currentIndex ) : mixed Reads the value of the property at the given index in the path
readPropertyPath ( object | array &$objectOrArray, integer $currentIndex ) : mixed Recursive implementation of getValue()
updateProperty ( &$objectOrArray, integer $currentIndex, mixed $value ) Sets the value of the property at the given index in the path
updatePropertyPath ( object | array &$objectOrArray, integer $currentIndex, mixed $value ) Recursive implementation of setValue()

Method Details

__construct() public méthode

Parses the given property path
public __construct ( $propertyPath )

__toString() public méthode

Returns the string representation of the property path
public __toString ( ) : string
Résultat string

camelize() protected méthode

protected camelize ( $property )

getElement() public méthode

Returns the element at the given index in the property path
public getElement ( $index ) : string
Résultat string A property or index name

getElements() public méthode

Returns the elements of the property path as array
public getElements ( ) : array
Résultat array An array of property/index names

getIterator() public méthode

Returns a new iterator for this path
public getIterator ( ) : Symfony\Component\Form\PropertyPathIterator
Résultat Symfony\Component\Form\PropertyPathIterator

getValue() public méthode

Example: $path = new PropertyPath('child.name'); echo $path->getValue($object); 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" or "is". If the getter does not exist, this method tries to find a public property. The value of the property is then returned. If neither is found, an exception is thrown.
public getValue ( object | array $objectOrArray ) : mixed
$objectOrArray object | array The object or array to traverse
Résultat mixed The value at the end of the property path

isIndex() public méthode

Returns whether the element at the given index is an array index
public isIndex ( integer $index ) : boolean
$index integer The index in the property path
Résultat boolean Whether the element at this index is an array index

isProperty() public méthode

Returns whether the element at the given index is a property
public isProperty ( integer $index ) : boolean
$index integer The index in the property path
Résultat boolean Whether the element at this index is a property

readProperty() protected méthode

Reads the value of the property at the given index in the path
protected readProperty ( object $object, integer $currentIndex ) : mixed
$object object The object to read from
$currentIndex integer The index of the read property in the path
Résultat mixed The value of the property

readPropertyPath() protected méthode

Recursive implementation of getValue()
protected readPropertyPath ( object | array &$objectOrArray, integer $currentIndex ) : mixed
$objectOrArray object | array The object or array to traverse
$currentIndex integer The current index in the property path
Résultat mixed The value at the end of the path

setValue() public méthode

Example: $path = new PropertyPath('child.name'); echo $path->setValue($object, '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.
public setValue ( object | array &$objectOrArray, $value ) : mixed
$objectOrArray object | array The object or array to traverse
Résultat mixed The value at the end of the property path

updateProperty() protected méthode

Sets the value of the property at the given index in the path
protected updateProperty ( &$objectOrArray, integer $currentIndex, mixed $value )
$currentIndex integer The index of the modified property in the path
$value mixed The value to set

updatePropertyPath() protected méthode

Recursive implementation of setValue()
protected updatePropertyPath ( object | array &$objectOrArray, integer $currentIndex, mixed $value )
$objectOrArray object | array The object or array to traverse
$currentIndex integer The current index in the property path
$value mixed The value to set at the end of the property path

Property Details

$elements protected_oe property

The elements of the property path
protected array $elements
Résultat array

$isIndex protected_oe property

Contains a boolean for each property in $elements denoting whether this element is an index. It is a property otherwise.
protected array $isIndex
Résultat array

$length protected_oe property

The number of elements in the property path
protected int $length
Résultat integer

$string protected_oe property

String representation of the path
protected string $string
Résultat string