Php Symfony2:如何读取config.yml中的参数数组
my parameters.yml文件具有:Php Symfony2:如何读取config.yml中的参数数组,php,symfony,yaml,Php,Symfony,Yaml,my parameters.yml文件具有: parameters: title: subtitle: value 我想将值传递给config.yml中的服务 my_service: class: the_class arguments: [ %title.subtitle%] //didn't work arguments: [ %title['subtitle']%] //didn't work 如何执行此操作
parameters:
title:
subtitle: value
我想将值
传递给config.yml中的服务
my_service:
class: the_class
arguments: [ %title.subtitle%] //didn't work
arguments: [ %title['subtitle']%] //didn't work
如何执行此操作?Symfony2不支持使用
%
符号读取参数数组上的单个元素。你所做的事情是不可能开箱即用的
唯一的方法是创建您自己的
Symfony\Component\DependencyInjection\ParameterBag\ParameterBag
,它将支持获取数组项。表示法不起作用,但可以通过以下方式完成:
my_service:
class: the_class
arguments: ["@=container.getParameter('title')['subtitle']"]
它至少适用于symfony 2.7.3
有关表达式语言的更多信息,请参见烹饪书:
您是否尝试将title定义为类似于
title:{value:'someValue',subtitle:'other value'}
?顺便说一下,必须引用参数引用<代码>参数:['%title%]您在何处找到此语法的可能重复项“@=container.getParameter('title')['subtitle']”
?请检查文档