我想知道爲什麼無法將根節點配置名稱空間注入到服務中。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」下定義的內容都可用?
或者也許你們中的任何人找到了解決方案並分享它?
謝謝。
非常感謝你爲我工作。我不知道爲什麼我沒有想到這一點:) –