我目前正在根据 OOP 原则创建一些东西,并且我正在尝试应用依赖注入。我知道我可能在这里做错了什么,整个 DI 的事情似乎比它可能更令人困惑,但我仍在努力完全理解它。
我创建了一个表单类,它将输出各种表单元素,但表单类至少需要两个其他类(创建为对象)才能正常运行。
这就是我得到它的方式:
$config = new Config();
$db = new Database();
$html = new HTML();
$form = new Form($config, $db, $html);
这只是我在玩,所以 Form 可能不需要所有这些东西,但我用它们来说明这一点。
现在,当我创建一个表单时,我不想将三个对象传递给它来使用它。我可以用静态方法等解决这个问题,但这真的不是我想要走的路。
那么,能够使用之前在 Form 类中创建的三个对象的最佳方法是什么?
我想我在某种程度上想要一种几乎全球性的行为。
我发现了一些关于这个和工厂、IoC 容器等的事情,但没有任何东西可以清楚而轻松地解释它,所以任何帮助都会很棒。甚至是一个易于理解的教程的链接,或者我自己找不到的东西。
我还发现了 Pimple - 这样的事情可能是正确的吗?