0

構成クラスを作成し、そのクラスで構成を定義するツリーを作成し、子ノードも作成します。

->children()
    ->scalarNode('node1')
        ->isRequired()
        ->cannotBeEmpty()->defaultValue('em_profession_label')->end()
        ->arrayNode('node2') 
            ->isRequired()
            ->requiresAtLeastOneElement()
            ->useAttributeAsKey('id')
            ->prototype('array')
        .....

yml ファイルに新しい子ノードを追加する必要があるときの問題なので、上記のコードを何度も繰り返す必要があります。私の構成クラスの新しいコード...

4

1 に答える 1

0

を呼び出した後、prototype()各子ノードがどのようになるかを指定できます。

//...
->arrayNode('nodes')
    ->prototype('array')
        ->children()
            ->scalarNode('option_name1')->end()
            ->scalarNode('option_name2')->end()
        ->end()
    ->end()
->end()
//...

つまり、YML構成ファイルでは、構成でマップしたものと一致する限り、必要な数のノードを定義できます。例えば...

nodes:
    node1:
        option_name1: somevalue
        option_name2: someothervalue
    node2:
        option_name1: somevalue
        option_name2: someothervalue
    node3:
        option_name1: somevalue
        option_name2: someothervalue
于 2012-09-24T12:41:43.137 に答える