如何从 parameters.yml 外部控制器检索参数?

How to retrieve parameter from parameters.yml outside controller?

我需要 Command\ContainerAwareCommand class 中 parameters.yml 的参数。我在那里没有看到 $this->getParameter()

有没有一种简单的方法可以从 parameters.yml 外部控制器检索参数?

比以下更简单: 写入"friendly configuration",然后将参数foo放入config.yml,然后在DependencyInjection\Extension::load()中检索参数,并设置它:$container->setParameter('foo', $foo),最后在Command\ContainerAwareCommand ] 检索它 $this->getContainer()->getParameter('foo')?

您可以通过以下方式访问容器:

... 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" }

希望对您有所帮助