Symfony2:在其他服务之间注入服务的更好方法

时间:2014-02-05 10:35:49

标签: php symfony dependency-injection

我已经阅读了一些有关此主题的帖子,但我仍然想知道是否有更好的方法来“自动注入”任何服务。我的意思是,如果我有一个名为person services的名称空间(包括personalDataService,relativesDataService等),那么如果我可以这样做的话会很棒:

services:
    Person.personalData:
        class:        Main\UserBundle\Services\PersonalDataService
        arguments: [Person.*]

    Person.relativesData:
        class:        Main\UserBundle\Services\RelativesataService
        arguments: [Person.*]

我知道可以关注this post,但我正在寻找其他“有效”的方式

1 个答案:

答案 0 :(得分:1)

没有更好的方法。最好的方法是在您自己的post ...

中描述的方式

为什么?

你不想注入不需要的服务,因为如果你开始注入你不会使用的服务,那么你会破坏你自己的应用程序,它会或多或少地减慢速度。所以基本上使用上面帖子中描述的方式是最好的方法,因为你会再次想知道我真正需要什么,只需要输入必要的东西...如果这意味着以后你必须改变你的配置和服务构造函数,因为你需要注入额外的服务,所以它是。

我希望这能回答你的问题...