Spec-Zone.ru › Symfony 3.2

ArrayNodeDefinition

class ArrayNodeDefinition extends NodeDefinition implements ParentNodeDefinitionInterface

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

Методы

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

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

$this setParent(NodeParentInterface $parent)

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

from NodeDefinition
$this info(string $info)

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

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

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

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

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

from NodeDefinition
NodeParentInterface|NodeBuilder|NodeDefinition|null end()

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

from NodeDefinition
NodeInterface getNode(bool $forceRootNode = false)

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

from NodeDefinition
$this defaultValue(mixed $value)

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

from NodeDefinition
$this isRequired()

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

from NodeDefinition
$this treatNullLike(mixed $value)

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

from NodeDefinition
$this treatTrueLike(mixed $value)

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

from NodeDefinition
$this treatFalseLike(mixed $value)

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

from NodeDefinition
$this defaultNull()

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

from NodeDefinition
$this defaultTrue()

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

from NodeDefinition
$this defaultFalse()

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

from NodeDefinition
ExprBuilder beforeNormalization()

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

from NodeDefinition
$this cannotBeEmpty()

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

from NodeDefinition
ExprBuilder validate()

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

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

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

from NodeDefinition
setBuilder(NodeBuilder $builder)

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

children()

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

NodeDefinition prototype(string $type)

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

$this addDefaultsIfNotSet()

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

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

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

$this requiresAtLeastOneElement()

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

$this disallowNewKeysInSubsequentConfigs()

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

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

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

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

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

$this canBeUnset(bool $allow = true)

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

$this canBeEnabled()

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

$this canBeDisabled()

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

$this performNoDeepMerging()

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

$this ignoreExtraKeys(bool $remove = true)

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

$this normalizeKeys(bool $bool)

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

append(NodeDefinition $node)

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

Подробности

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

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

Параметры

string $name Имя узла
NodeParentInterface $parent Родитель

$this setParent(NodeParentInterface $parent)

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

Параметры

NodeParentInterface $parent Родитель

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

$this

$this info(string $info)

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

Параметры

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

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

$this

$this example(string|array $example)

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

Параметры

string|array $example

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

$this

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

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

Параметры

string $key
mixed $value

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

$this

NodeParentInterface|NodeBuilder|NodeDefinition|null end()

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

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

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

NodeInterface getNode(bool $forceRootNode = false)

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

Параметры

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

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

NodeInterface

$this defaultValue(mixed $value)

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

Параметры

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

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

$this

$this isRequired()

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

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

$this

$this treatNullLike(mixed $value)

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

Параметры

mixed $value

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

$this

$this treatTrueLike(mixed $value)

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

Параметры

mixed $value

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

$this

$this treatFalseLike(mixed $value)

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

Параметры

mixed $value

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

$this

$this defaultNull()

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

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

$this

$this defaultTrue()

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

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

$this

$this defaultFalse()

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

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

$this

ExprBuilder beforeNormalization()

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

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

ExprBuilder

$this cannotBeEmpty()

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

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

$this

ExprBuilder validate()

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

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

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

ExprBuilder

$this cannotBeOverwritten(bool $deny = true)

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

Параметры

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

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

$this

setBuilder(NodeBuilder $builder)

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

Параметры

NodeBuilder $builder

children()

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

NodeDefinition prototype(string $type)

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

Параметры

string $type тип узла

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

NodeDefinition

$this addDefaultsIfNotSet()

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

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

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

$this

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

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

Параметры

int|string|array|null $children Количество дочерних элементов | Имя дочернего элемента | Имена дочерних элементов для добавления

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

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

$this

$this requiresAtLeastOneElement()

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

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

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

$this

$this disallowNewKeysInSubsequentConfigs()

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

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

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

$this

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

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

Параметры

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

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

$this

$this 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 Удалить ли элемент ключа

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

$this

$this canBeUnset(bool $allow = true)

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

Параметры

bool $allow

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

$this

$this canBeEnabled()

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

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

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

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

$this

$this canBeDisabled()

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

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

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

$this

$this performNoDeepMerging()

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

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

$this

$this ignoreExtraKeys(bool $remove = true)

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

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

Параметры

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

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

$this

$this normalizeKeys(bool $bool)

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

Параметры

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

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

$this

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.2/Symfony/Component/Config/Definition/Builder/ArrayNodeDefinition.html

Spec-Zone.ru

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