代码之家  ›  专栏  ›  技术社区  ›  sridesmet

在配置或中自动关联所有类

  •  1
  • sridesmet  · 技术社区  · 8 年前

    我使用PHPDI在API应用程序中自动加载类。

    然而,为了提高速度,php di声明必须手动自动连接类以进行编译。所以他们给我们举了一个例子:

    return [
      // ... (your definitions)
    
      UserController::class => autowire(),
      BlogController::class => autowire(),
      ProductController::class => autowire(),
      // ...
    ];
    

    我不明白我们必须自动连接哪些类来进行编译。所有课程?还是只有控制器?

    由于应用程序相当大,我可以想象这个DiC配置文件会变得多大。不仅如此,如果我创建了一个新的存储库或模型,那么我不应该忘记将其添加到我的DiC配置中。。

    资料来源: http://php-di.org/doc/performances.html

    1 回复  |  直到 8 年前
        1
  •  1
  •   Matthieu Napoli    8 年前

    您只能添加控制器:PHP-DI将递归地遍历它们的所有依赖项(及其依赖项)以编译它们。控制器通常是应用程序的入口点,因此它是查找应用程序中所有(或大多数)服务的良好起点。

    然而,我认为这更多的是一个表现的问题。如果应用程序的响应时间非常短,那么这可能是值得的,否则添加所有类进行编译可能不会产生明显的效果。

    推荐文章