我正在一个用 PHP 编码的网站上工作,并且一直在阅读Dependency Injection。但是,我不明白反对这种情况的原因:
我有一个脚本,目前有 2 个全局变量(一个是数据库连接,一个是存储从数据库中提取的当前用户数据)。除了我的一两个类之外,这两个全局变量都用在了所有的类中。使用 DI 实现这些全局对象的想法听起来像是大量额外的输入而没有真正的回报;最多 2 个额外的参数要传递给我的大多数类以及最多 2 个额外的属性来保存这些注入的依赖项。
我问这个不是因为我想要一个不必重做全局变量的借口,我问这个是因为我真的很想知道:
如果脚本中几乎每个对象都使用少量对象,是否可以将这些对象设为全局对象?在这种情况下,使用 DI 而不是全局变量有什么好处?