Spec-Zone.ru › Symfony 3.0

ArrayNodeDefinition

class ArrayNodeDefinition extends NodeDefinition implements ParentNodeDefinitionInterface

Этот класс предоставляет удобный интерфейс для определения узла массива.

Методы

__construct(string $name, NodeParentInterface $parent = null)

Конструктор.

NodeDefinition|$this setParent(NodeParentInterface $parent)

Устанавливает родительский узел.

from NodeDefinition
NodeDefinition|$this info(string $info)

Устанавливает сообщение информации.

from NodeDefinition
NodeDefinition|$this example(string|array $example)

Устанавливает пример конфигурации.

from NodeDefinition
NodeDefinition|$this attribute(string $key, mixed $value)

Устанавливает атрибут узла.

from NodeDefinition
NodeParentInterface|null end()

Возвращает родительский узел.

from NodeDefinition
NodeInterface getNode(bool $forceRootNode = false)

Создаёт узел.

from NodeDefinition
NodeDefinition|$this defaultValue(mixed $value)

Устанавливает значение по умолчанию.

from NodeDefinition
NodeDefinition|$this isRequired()

Устанавливает узел как обязательный.

from NodeDefinition
NodeDefinition|$this treatNullLike(mixed $value)

Устанавливает эквивалентное значение, используемое, когда узел содержит null.

from NodeDefinition
NodeDefinition|$this treatTrueLike(mixed $value)

Устанавливает эквивалентное значение, используемое, когда узел содержит true.

from NodeDefinition
NodeDefinition|$this treatFalseLike(mixed $value)

Устанавливает эквивалентное значение, используемое, когда узел содержит false.

from NodeDefinition
NodeDefinition|$this defaultNull()

Устанавливает null в качестве значения по умолчанию.

from NodeDefinition
NodeDefinition|$this defaultTrue()

Устанавливает true в качестве значения по умолчанию.

from NodeDefinition
NodeDefinition|$this defaultFalse()

Устанавливает false в качестве значения по умолчанию.

from NodeDefinition
ExprBuilder beforeNormalization()

Устанавливает выражение для выполнения перед нормализацией.

from NodeDefinition
NodeDefinition|$this cannotBeEmpty()

Запрещает пустое значение узла.

from NodeDefinition
ExprBuilder validate()

Устанавливает выражение для выполнения проверки.

from NodeDefinition
NodeDefinition|$this cannotBeOverwritten(bool $deny = true)

Устанавливает, может ли узел быть перезаписан.

from NodeDefinition
setBuilder(NodeBuilder $builder)

Устанавливает пользовательского билдера дочерних узлов.

children()

Возвращает билдер для добавления дочерних узлов.

NodeDefinition prototype(string $type)

Устанавливает шаблон для дочерних узлов.

ArrayNodeDefinition addDefaultsIfNotSet()

Добавляет значение по умолчанию, если узел не задан в конфигурации.

ArrayNodeDefinition addDefaultChildrenIfNoneSet(int|string|array|null $children = null)

Добавляет дочерние узлы со значением по умолчанию, если они не определены.

ArrayNodeDefinition requiresAtLeastOneElement()

Требует, чтобы узел содержал как минимум один элемент.

ArrayNodeDefinition disallowNewKeysInSubsequentConfigs()

Запрещает добавление новых ключей в последующей конфигурации.

ArrayNodeDefinition fixXmlConfig(string $singular, string $plural = null)

Устанавливает правило нормализации для XML-конфигураций.

ArrayNodeDefinition useAttributeAsKey(string $name, bool $removeKeyItem = true)

Устанавливает атрибут, значение которого будет использоваться в качестве ключа.

ArrayNodeDefinition canBeUnset(bool $allow = true)

Устанавливает, может ли узел быть удалён.

ArrayNodeDefinition canBeEnabled()

Добавляет boolean-атрибут "enabled" для включения текущего раздела.

ArrayNodeDefinition canBeDisabled()

Добавляет boolean-атрибут "enabled" для включения текущего раздела.

ArrayNodeDefinition performNoDeepMerging()

Отключает глубокую слияние узла.

ArrayNodeDefinition ignoreExtraKeys(bool $remove = true)

Позволяет указывать дополнительные ключи конфигурации в массиве без выброса исключения.

ArrayNodeDefinition normalizeKeys(bool $bool)

Устанавливает нормализацию ключей.

append(NodeDefinition $node)

Добавляет определение узла.

Подробности

__construct(string $name, NodeParentInterface $parent = null)

Конструктор.

Параметры

string $name Имя узла
NodeParentInterface $parent Родительский элемент

NodeDefinition|$this setParent(NodeParentInterface $parent)

Устанавливает родительский узел.

Параметры

NodeParentInterface $parent Родительский элемент

Значение результата

NodeDefinition|$this

NodeDefinition|$this info(string $info)

Устанавливает сообщение с информацией.

Параметры

string $info Текст информации

Значение результата

NodeDefinition|$this

NodeDefinition|$this example(string|array $example)

Устанавливает пример конфигурации.

Параметры

string|array $example

Значение результата

NodeDefinition|$this

NodeDefinition|$this attribute(string $key, mixed $value)

Устанавливает атрибут узла.

Параметры

string $key
mixed $value

Значение результата

NodeDefinition|$this

NodeParentInterface|null end()

Возвращает родительский узел.

Значение результата

NodeParentInterface|null Построитель родительского узла

NodeInterface getNode(bool $forceRootNode = false)

Создает узел.

Параметры

bool $forceRootNode Вынужденно сделать этот узел корневым

Значение результата

NodeInterface

NodeDefinition|$this defaultValue(mixed $value)

Устанавливает значение по умолчанию.

Параметры

mixed $value Значение по умолчанию

Значение результата

NodeDefinition|$this

NodeDefinition|$this isRequired()

Устанавливает узел как обязательный.

Значение результата

NodeDefinition|$this

NodeDefinition|$this treatNullLike(mixed $value)

Устанавливает эквивалентное значение, используемое, когда узел содержит null.

Параметры

mixed $value

Значение результата

NodeDefinition|$this

NodeDefinition|$this treatTrueLike(mixed $value)

Устанавливает эквивалентное значение, используемое, когда узел содержит true.

Параметры

mixed $value

Значение результата

NodeDefinition|$this

NodeDefinition|$this treatFalseLike(mixed $value)

Устанавливает эквивалентное значение, используемое, когда узел содержит false.

Параметры

mixed $value

Значение результата

NodeDefinition|$this

NodeDefinition|$this defaultNull()

Устанавливает null в качестве значения по умолчанию.

Значение результата

NodeDefinition|$this

NodeDefinition|$this defaultTrue()

Устанавливает true в качестве значения по умолчанию.

Значение результата

NodeDefinition|$this

NodeDefinition|$this defaultFalse()

Устанавливает false в качестве значения по умолчанию.

Значение результата

NodeDefinition|$this

ExprBuilder beforeNormalization()

Устанавливает выражение для выполнения перед нормализацией.

Значение результата

ExprBuilder

NodeDefinition|$this cannotBeEmpty()

Запрещает значение узла быть пустым.

Значение результата

NodeDefinition|$this

ExprBuilder validate()

Устанавливает выражение для выполнения валидации.

Выражение получает значение узла и должно вернуть его. Оно может его изменить. При невалидном узле должно быть выброшено исключение.

Значение результата

ExprBuilder

NodeDefinition|$this cannotBeOverwritten(bool $deny = true)

Устанавливает, можно ли перезаписывать узел.

Параметры

bool $deny Запрещено ли перезаписывание

Значение результата

NodeDefinition|$this

setBuilder(NodeBuilder $builder)

Устанавливает пользовательский построитель дочерних элементов.

Параметры

NodeBuilder $builder

children()

Возвращает построитель для добавления дочерних узлов.

NodeDefinition prototype(string $type)

Устанавливает шаблон для дочерних узлов.

Параметры

string $type тип узла

Значение результата

NodeDefinition

ArrayNodeDefinition addDefaultsIfNotSet()

Добавляет значение по умолчанию, если узел не задан в конфигурации.

Этот метод применим только к конкретным узлам (не к прототипам узлов). Если эта функция была вызвана, и узел не был установлен на стадии завершения, его значение по умолчанию будет получено из значений по умолчанию его дочерних узлов.

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition addDefaultChildrenIfNoneSet(int|string|array|null $children = null)

Добавляет дочерние узлы со значением по умолчанию, если они не определены.

Параметры

int|string|array|null $children Количество дочерних узлов|Имя дочернего узла|Имена дочерних узлов, которые нужно добавить

Этот метод применим только к узлам-прототипам.

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition requiresAtLeastOneElement()

Требует, чтобы у узла было как минимум одно значение.

Этот метод применим только к узлам-прототипам.

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition disallowNewKeysInSubsequentConfigs()

Запрещает добавление новых ключей в последующих конфигурациях.

Если используется, все ключи должны быть определены в одном и том же файле конфигурации.

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition fixXmlConfig(string $singular, string $plural = null)

Устанавливает правило нормализации для конфигураций XML.

Параметры

string $singular Ключ для переназначения
string $plural Множественное число ключа для нерегулярных множественных чисел

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition useAttributeAsKey(string $name, bool $removeKeyItem = true)

Устанавливает атрибут, значение которого используется в качестве ключа.

Это полезно, когда у вас есть индексированный массив, который должен быть ассоциативным массивом. Вы можете выбрать элемент из массива, чтобы он стал ключом конкретного элемента. Например, если "id" является "ключом", то:

array(
    array('id' => 'my_name', 'foo' => 'bar'),
);

становится

array(
    'my_name' => array('foo' => 'bar'),
);

Если вы хотите, чтобы "'id' => 'my_name'" все еще присутствовал в результирующем массиве, то вы можете установить второе аргумент этого метода в false.

Этот метод применим только к узлам-прототипам.

Параметры

string $name Имя ключа
bool $removeKeyItem Удалить ли элемент ключа.

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition canBeUnset(bool $allow = true)

Устанавливает, можно ли удалить узел.

Параметры

bool $allow

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition canBeEnabled()

Добавляет булево значение "enabled" для включения текущего раздела.

По умолчанию раздел отключен. Если указана любая конфигурация, узел будет автоматически включен:

enableableArrayNode: {enabled: true, ...} # Конфигурация включена & значения по умолчанию перезаписываются enableableArrayNode: ~ # Конфигурация включена & используются значения по умолчанию enableableArrayNode: true # Конфигурация включена & используются значения по умолчанию enableableArrayNode: {other: value, ...} # Конфигурация включена & значения по умолчанию перезаписываются enableableArrayNode: {enabled: false, ...} # Конфигурация отключена enableableArrayNode: false # Конфигурация отключена

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition canBeDisabled()

Добавляет булево значение "enabled" для включения текущего раздела.

По умолчанию раздел включен.

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition performNoDeepMerging()

Отключает глубокое слияние узла.

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition ignoreExtraKeys(bool $remove = true)

Разрешает указывать дополнительные ключи конфигурации в массиве без выброса исключения.

Эти значения конфигурации просто игнорируются и удаляются из результирующего массива. Это следует использовать только в особых случаях, когда вы хотите отправить весь массив конфигурации в специальное дерево, которое обрабатывает только часть массива.

Параметры

bool $remove Удалить ли дополнительные ключи

Возвращаемое значение

ArrayNodeDefinition

ArrayNodeDefinition normalizeKeys(bool $bool)

Устанавливает нормализацию ключей.

Параметры

bool $bool Включить нормализацию ключей

Возвращаемое значение

ArrayNodeDefinition

append(NodeDefinition $node)

Добавляет определение узла.

$node = new ArrayNodeDefinition() ->children() ->scalarNode('foo')->end() ->scalarNode('baz')->end() ->end() ->append($this->getBarNodeDefinition()) ;

Параметры

NodeDefinition $node

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API