我刚刚发现依赖注入,我想将它应用到我一直在从事的中型项目中。我已经有一个类文件夹,其中包含系统中使用的所有类
/应用程序/核心/类
我想知道如何配置 PHP-DI 以根据需要定位这些类。
提前致谢
我刚刚发现依赖注入,我想将它应用到我一直在从事的中型项目中。我已经有一个类文件夹,其中包含系统中使用的所有类
/应用程序/核心/类
我想知道如何配置 PHP-DI 以根据需要定位这些类。
提前致谢
PHP-DI 的作者在这里,你是用 Composer 安装的吗?
如果是,那么在您的脚本中配置您的文件夹composer.json
并只需要。vendor/autoload.php
然后您可以开始使用容器,它应该可以正常工作。例如:
$container = \DI\ContainerBuilder::buildDevContainer();
$yourObject = $container->get('YourClass');
现在请注意,此示例不是依赖注入(如您所见,这里没有任何注入)。当您从容器 () 中获取对象时,$container->get()
您将代码耦合到容器。
可以在应用程序的根目录执行此操作,例如实例化您的控制器(或您想要拥有的任何其他根对象)。但是控制器的依赖应该被注入,而不是从容器中获取(如果你想做依赖注入)。
顺便说一句,如果您想讨论更多主题,这里有一个聊天室:https ://gitter.im/mnapoli/PHP-DI ,当然还有文档。