我想知道为什么无法将根节点配置名称空间注入到服务中。Symfony2 - 配置 - 注入根节点参数以获取整个配置
实施例的配置:
my_bundle:
foo: bar
foobar: 123
bar: 1
这将是MyBundle /资源/配置/ services.xml中的服务配置。
...
<service id="my_bundle.service.my" class="MyService">
<argument>%my_bundle%</argument>
</service>
...
现在我想将配置注入到我的服务类中。但是这不起作用,因为symfony2不知道关于配置根节点“my_bundle”的任何信息。
class MyService
{
public function __construct($config) {}
}
我知道,我可以分割配置,当我需要在服务类,使其工作添加尽可能多的构造函数的参数。但是这会在构造函数中导致大量的参数。
此外,我认为注入整个symfony2容器是不好的做法。
也许你们其中一个人可以回答我: 1.为什么这不起作用? 2.我了解整个配置系统是否错误? 3.我认为如果我注入根节点,所有在名称空间“my_bundle”下定义的内容都可用?
或者也许你们中的任何人找到了解决方案并分享它?
谢谢。
非常感谢你为我工作。我不知道为什么我没有想到这一点:) –