Symfony 2 YAML传递数组

Ton*_*nov 8 php configuration yaml symfony

我不知道我在哪里可以得到一样的特殊语法的更多信息,@somevar%somevar%在Symfony2中的YAML配置?

例如,using @定义了对服务的调用,即我们将依赖项传递给服务的方式.%somevar%另一方面,使用名称引用已定义参数的值somevar.

所以,如果我这样做:

parameters:
    custom: "some value"
    another: %custom%
Run Code Online (Sandbox Code Playgroud)

然后another将填充值custom,在我的情况下是"一些价值".我的问题是,这些关系记录在哪里?

我特别需要能够引用数组的元素,例如%somevar[somekey]%,但语法不起作用.

提前致谢!

编辑:我发现了这个: Full merge key support. Full support for references, aliases, and full merge key. Don't repeat yourself by referencing common configuration bits.

在yaml文档中,但没有关于它的更为有用的文档..

Flo*_*ian 0

您正在搜索的并不是真正关于 Yaml 本身,而是关于依赖注入容器的 Yaml 加载器。

如果您搜索有关它的文档,这里是旧组件(v1)的文档:http://components.symfony-project.org/dependency-injection/trunk/book/05-Service-Description

Symfony2 附带了一个新组件(基于相同的原理)。您可以在这里找到官方文档:http://symfony.com/doc/current/book/service_container.html#service-parameters

关于您的问题,您无法访问 DI 参数的键,您必须手动展平。

您可以使用 DI 扩展来满足您的需求,以一些捆绑包为例: https: //github.com/symfony/AsseticBundle/blob/master/DependencyInjection/AsseticExtension.php#L54(可能不是最好的例子)。