我需要来自parameters.yml
课程中Command\ContainerAwareCommand
的参数。我在那里看不到$this->getParameter()
。
是否有一种从parameters.yml
外部控制器检索参数的简单方法?
比以下更简单:
写下“友好配置”,并将参数foo
放入config.yml
,然后在DependencyInjection\Extension::load()
中检索参数,并设置它:$container->setParameter('foo', $foo)
,最后在Command\ContainerAwareCommand
中检索它$this->getContainer()->getParameter('foo')
?
答案 0 :(得分:5)
您只需通过以下方式访问容器:
... extends ContainerAwareCommand
...
$this->getContainer()->getParameter('my-params');
编辑:
您可以定义自己的自定义参数,然后在主config.yml文件中导入,例如:
config.yml
imports:
- { resource: parameters.yml }
- { resource: security.yml }
- { resource: services.yml }
- { resource: "@ApplicationBundle/Resources/config/parameters.yml" }
希望这个帮助