Symfony中的YML文件 - 你能获得超过1级的关联数组吗?

Tom*_*Tom 3 yaml symfony1 symfony-1.4

我有一大堆要存储的数据/apps/frontend/modules/builder/config/module.yml.

我有它看起来像:

all:
  series_options:
    compact:
      name: Compact
      description: Something small.
      enabled: 1
    large:
      name: Large
      description: Bit bigger.
      enabled: 0
Run Code Online (Sandbox Code Playgroud)

在actions.class中如果我写这个:

sfConfig::get('mod_builder_series_options_compact');
Run Code Online (Sandbox Code Playgroud)

我明白了

Array
(
  [name] => Compact
  [description] => Something small.
  [enabled] => 1
)
Run Code Online (Sandbox Code Playgroud)

完善.但我想写这个:

sfConfig::get('mod_builder_series_options');
Run Code Online (Sandbox Code Playgroud)

这给了NULL.

有没有什么方法可以让它将完整的关联数组返回到它的全部深度,以便我可以迭代不同的选项?

Jak*_*las 5

您可以在其名称前添加带有点的级别,以在特定级别强制执行数组:

all:
  .options:
    series_options:
      compact:
        name: Compact
        description: Something small.
        enabled: 1
      large:
        name: Large
        description: Bit bigger.
        enabled: 0
Run Code Online (Sandbox Code Playgroud)

现在,您应该能够访问以下设置:

sfConfig::get('mod_builder_series_options');
Run Code Online (Sandbox Code Playgroud)

请记住,模块配置只能在定义的模块中访问.