【问题标题】:PHP Dependency Injection ManagementPHP 依赖注入管理
【发布时间】:2018-12-05 16:44:34
【问题描述】:

我创建了一个 PHP 包,在其中应用了 solid 原则,这很棒,但是我最终将许多单独的依赖项注入到主类或模块中,然后将它们使用。

示例:

$dataViewer   = new DataViewer;
$dataProvider = new DataProvider;
$dataParser   = new DataParser;
$dataSaver    = new DataSaver;

... 然后在我的主模块或类中使用所有这些依赖项,如下所示:

$myPackage = new MyPackage($dataViewer, $dataProvider, $dataParser, $dataSaver);

然后我使用我的包。

对于那些使用这个包并且只需要获取 MyPackage 的实例而不是注入所有这些依赖项的人来说,有没有办法让这变得更容易一些。

【问题讨论】:

  • 您需要创建自己的配置和自动布线系统。例如,看看 Symfony 是如何做到的。事实上,这个问题还不错,但是对于 Stack Overflow 的要求来说太宽泛了。
  • 例如阅读this

标签: php oop dependency-injection


【解决方案1】:

This 评论可以帮助你。还记得有很多方法可以注入依赖项,可能是通过 setter/getter 吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-16
    • 1970-01-01
    • 2017-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多