我有一个简单的问题。
class controller{
$model;
$view;
$db;
$array;
public function __construct(Model $model, View $view, Database $db, Input $array){
$this->model = $model;
$this->view = $view;
$this->db= $db;
$this->array = $array;
}
public function giveToModel{
$this->model->someFunction($this->view, $this->db , $this->array);
}
}
现在,我对编程有点陌生,所以我有几个问题。为了遵守SOLID等编码中的公证原则,DI是必须的。但是,我对如何在MVC框架中实现它感到迷茫。我只需要一些指针即可。
关于上面的代码。我真的不确定在那里注射。是否需要通过构造函数注入所有这些。还是我应该通过功能“ giveToModel”注入其中的一些(视图$ view,数据库$ db,输入$ array)。
还有一个。我可以制作两个这样的容器吗?
class controllerDepen {
public function loadModel($name){
return new $name.'Model';
}
public function postArray(){
return new $postData; //object that gathers all the $_POST data into one array
}
}
另外一个负责处理模型的依赖关系,然后传递这些依赖关系并使用它们来设置依赖关系。
我的主要问题是:
我知道类似DIC的东西,但是,在使用这些东西之前,我真的很想了解这个主题。
如您所见,针对这个主题,我可能需要一些额外的解释。