1

我有一个想法,需要在另一个类中加载。假设我有包含一次的 index.php(database.php)。在一个类中,创建一个未被该类扩展的新对象是否可以接受?换句话说,改为在全球范围内引入内容?这就是我的意思...

index.php:
----------------------
include_once ('./core/dataAccess.php');

....

class home {
    private function getUsers() {
        $dataAccess = new DataAccess();
    }
}    
4

1 回答 1

2

这是可接受且广泛使用的做法,但在大多数情况下它不是最佳解决方案。高级方法是使用依赖注入,这意味着您的类所需的任何其他对象都将从外部“注入”,使它们可以互换。这可能发生在构造函数中、setter 方法中或直接作为需要它们的参数。

唯一使用new关键字的方法是工厂方法,除了创建对象之外什么都不做。

于 2013-02-15T17:05:39.417 回答