[英]How to add an array with values in Symfony2 configuration?
我想在配置文件(config.yml)中添加一个简单的值列表。 例如 :
my_bundle:
columns: ["col1", "col2"]
将节点添加到配置解析器时,它只是失败:
$rootNode = $treeBuilder->root('my_bundle');
$rootNode->arrayNode('columns')->children()->end();
这是错误:
InvalidConfigurationException: Unrecognized options "0, 1" under "my_bundle.columns"
我错过了什么? 这甚至可能吗?
如果你想实现这样的节点,那就做:
$rootNode
->children()
->arrayNode('columns')
->prototype('scalar')
->end()
->end()
->end()
;
我认为你缺少 YAML不是一种标记语言,它甚至不是一个的langauge这样(这是一个数据序列化标准),所以它不知道任何语言构造,如阵列。 它表达分组和数据位之间关系的主要“工具”是空格,冒号和短划线。
从YaML格式的symfony文档页面 :
my_bundle:
columns:
- col1
- col2
我从这一部分收集到:
YAML文件很少用于描述简单的标量。 大多数时候,它描述了一个集合。 集合可以是元素的序列或映射。 序列和映射都转换为PHP数组。
序列使用破折号后跟空格:
-
PHP
-
Perl
-
Python以前的YAML文件等效于以下PHP代码:
array('PHP', 'Perl', 'Python');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.