全部,依赖注入 - 必须将依赖关系作为注入对象的类变量之一吗?
我正在写一个php的动态网站,并试图使用依赖注入而不是全局。
在我的索引中,我创建了一个$view
对象,其中包含要在UI中显示的各种元素。在索引中,我还有一个switch($action){}
结构,根据用户在菜单上点击哪个项目(因此值为$action
)来控制哪些控制器为require
。然后我在控制器上说出类似$view=execute($view)
的内容。每个功能(每个控制器1个)以return $view;
结尾。我的想法是,我可以在索引中保留一个包含在用户会话期间生成的累积信息的对象$view
。
我的问题是:我需要使每个控制器的类变量为$view
吗?我只想通过函数传递它,在函数内对其进行修改,并将其返回,修改。我不确定这是否仍然被认为是依赖注入,或者使它成为或不是对象传递到的类的类变量有什么优点。
感谢,
JDelage
PS:有点更多的代码,以帮助理解:
的index.php中:
require_once("Class_view.php"); // J'ai cree une classe separee pour la vue.
$view=new $view;
$view->addToViewArray("title", "projet JDelage");
(...)
switch($action){ // Creates instances of the appropriate controller under the name $command
(...)
}
$view=$command->execute($view) // Each execute() function of each controller takes $view as a parameter, modifies it, and returns it.
我失去了你在'$ view = execute($ view)'。你可能会张贴一些示例代码来澄清你的问题吗? – erisco 2010-09-23 16:03:39