ArrayNode
class ArrayNode extends BaseNode implements PrototypeNodeInterface
Represents an Array node in the config tree.
Methods
__construct(string $name, NodeInterface $parent = null) | from BaseNode | |
setAttribute($key, $value) | from BaseNode | |
getAttribute($key, $default = null) | from BaseNode | |
hasAttribute($key) | from BaseNode | |
getAttributes() | from BaseNode | |
setAttributes(array $attributes) | from BaseNode | |
removeAttribute($key) | from BaseNode | |
setInfo(string $info) Sets an info message. | from BaseNode | |
string | getInfo() Returns info message. | from BaseNode |
setExample(string|array $example) Sets the example configuration for this node. | from BaseNode | |
string|array | getExample() Retrieves the example configuration for this node. | from BaseNode |
addEquivalentValue(mixed $originalValue, mixed $equivalentValue) Adds an equivalent value. | from BaseNode | |
setRequired(bool $boolean) Set this node as required. | from BaseNode | |
setDeprecated(string|null $message) Sets this node as deprecated. | from BaseNode | |
setAllowOverwrite(bool $allow) Sets if this node can be overridden. | from BaseNode | |
setNormalizationClosures(array $closures) Sets the closures used for normalization. | from BaseNode | |
setFinalValidationClosures(array $closures) Sets the closures used for final validation. | from BaseNode | |
bool | isRequired() Checks if this node is required. | from BaseNode |
bool | isDeprecated() Checks if this node is deprecated. | from BaseNode |
string | getDeprecationMessage(string $node, string $path) Returns the deprecated message. | from BaseNode |
string | getName() Returns the name of this node. | from BaseNode |
string | getPath() Retrieves the path of this node. | from BaseNode |
mixed | merge(mixed $leftSide, mixed $rightSide) Merges two values together. | from BaseNode |
mixed | normalize(mixed $value) Normalizes a value, applying all normalization closures. | from BaseNode |
NodeInterface|null | getParent() Returns parent node for this node. | from BaseNode |
mixed | finalize(mixed $value) Finalizes a value, applying all finalization closures. | from BaseNode |
setNormalizeKeys($normalizeKeys) | ||
array | getChildren() Retrieves the children of this node. | |
setXmlRemappings(array $remappings) Sets the xml remappings that should be performed. | ||
array | getXmlRemappings() Gets the xml remappings that should be performed. | |
setAddIfNotSet(bool $boolean) Sets whether to add default values for this array if it has not been defined in any of the configuration files. | ||
setAllowFalse(bool $allow) Sets whether false is allowed as value indicating that the array should be unset. | ||
setAllowNewKeys(bool $allow) Sets whether new keys can be defined in subsequent configurations. | ||
setPerformDeepMerging(bool $boolean) Sets if deep merging should occur. | ||
setIgnoreExtraKeys(bool $boolean, bool $remove = true) Whether extra keys should just be ignore without an exception. | ||
setName(string $name) Sets the node Name. | ||
bool | hasDefaultValue() Checks if the node has a default value. | |
mixed | getDefaultValue() Retrieves the default value. | |
addChild(NodeInterface $node) Adds a child node. |
Details
__construct(string $name, NodeInterface $parent = null)
Parameters
string | $name | The name of the node |
NodeInterface | $parent | The parent of this node |
Exceptions
InvalidArgumentException | if the name contains a period |
setAttribute($key, $value)
Parameters
$key | ||
$value |
getAttribute($key, $default = null)
Parameters
$key | ||
$default |
hasAttribute($key)
Parameters
$key |
getAttributes()
setAttributes(array $attributes)
Parameters
array | $attributes |
removeAttribute($key)
Parameters
$key |
setInfo(string $info)
Sets an info message.
Parameters
string | $info |
string getInfo()
Returns info message.
Return Value
string | The info text |
setExample(string|array $example)
Sets the example configuration for this node.
Parameters
string|array | $example |
string|array getExample()
Retrieves the example configuration for this node.
Return Value
string|array | The example |
addEquivalentValue(mixed $originalValue, mixed $equivalentValue)
Adds an equivalent value.
Parameters
mixed | $originalValue | |
mixed | $equivalentValue |
setRequired(bool $boolean)
Set this node as required.
Parameters
bool | $boolean | Required node |
setDeprecated(string|null $message)
Sets this node as deprecated.
You can use %node% and %path% placeholders in your message to display, respectively, the node name and its complete path.
Parameters
string|null | $message | Deprecated message |
setAllowOverwrite(bool $allow)
Sets if this node can be overridden.
Parameters
bool | $allow |
setNormalizationClosures(array $closures)
Sets the closures used for normalization.
Parameters
array | $closures | An array of Closures used for normalization |
setFinalValidationClosures(array $closures)
Sets the closures used for final validation.
Parameters
array | $closures | An array of Closures used for final validation |
bool isRequired()
Checks if this node is required.
Return Value
bool | If the node is required |
bool isDeprecated()
Checks if this node is deprecated.
Return Value
bool |
string getDeprecationMessage(string $node, string $path)
Returns the deprecated message.
Parameters
string | $node | the configuration node name |
string | $path | the path of the node |
Return Value
string |
string getName()
Returns the name of this node.
Return Value
string | The name of the node |
string getPath()
Retrieves the path of this node.
Return Value
string | The node path |
final mixed merge(mixed $leftSide, mixed $rightSide)
Merges two values together.
Parameters
mixed | $leftSide | |
mixed | $rightSide |
Return Value
mixed | The merged values |
Exceptions
ForbiddenOverwriteException |
final mixed normalize(mixed $value)
Normalizes a value, applying all normalization closures.
Parameters
mixed | $value | The value to normalize |
Return Value
mixed | The normalized value |
NodeInterface|null getParent()
Returns parent node for this node.
Return Value
NodeInterface|null |
final mixed finalize(mixed $value)
Finalizes a value, applying all finalization closures.
Parameters
mixed | $value | The value to finalize |
Return Value
mixed | The finalized value |
Exceptions
Exception | |
InvalidConfigurationException |
setNormalizeKeys($normalizeKeys)
Parameters
$normalizeKeys |
array getChildren()
Retrieves the children of this node.
Return Value
array | The children |
setXmlRemappings(array $remappings)
Sets the xml remappings that should be performed.
Parameters
array | $remappings | An array of the form array(array(string, string)) |
array getXmlRemappings()
Gets the xml remappings that should be performed.
Return Value
array | $remappings an array of the form array(array(string, string)) |
setAddIfNotSet(bool $boolean)
Sets whether to add default values for this array if it has not been defined in any of the configuration files.
Parameters
bool | $boolean |
setAllowFalse(bool $allow)
Sets whether false is allowed as value indicating that the array should be unset.
Parameters
bool | $allow |
setAllowNewKeys(bool $allow)
Sets whether new keys can be defined in subsequent configurations.
Parameters
bool | $allow |
setPerformDeepMerging(bool $boolean)
Sets if deep merging should occur.
Parameters
bool | $boolean |
setIgnoreExtraKeys(bool $boolean, bool $remove = true)
Whether extra keys should just be ignore without an exception.
Parameters
bool | $boolean | To allow extra keys |
bool | $remove | To remove extra keys |
setName(string $name)
Sets the node Name.
Parameters
string | $name | The name of the node |
bool hasDefaultValue()
Checks if the node has a default value.
Return Value
bool | If the node has a default value |
mixed getDefaultValue()
Retrieves the default value.
Return Value
mixed | The default value |
Exceptions
RuntimeException | if the node has no default value |
addChild(NodeInterface $node)
Adds a child node.
Parameters
NodeInterface | $node |
Exceptions
InvalidArgumentException | when the child node has no name |
InvalidArgumentException | when the child node's name is not unique |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/4.0/Symfony/Component/Config/Definition/ArrayNode.html