关于laravel依赖注入和IoC容器的个人理解:
关于它的实现方式
我们要的最后结果就是:注入,只要注入就OK
实现注入的方法就像我的图(图比较炸)。借鉴了一些教程中的代码:
两个接口:
. . .
hkjhkhjkhkjhhkj
. . .
interface SuperModuleInterface
{
/**
* 超能力激活方法
*
* 任何一个超能力都得有该方法,并拥有一个参数
*@param array $target 针对目标,可以是一个或多个,自己或他人
*/
public function activate(array $target);
}
/**
* X-超能量
*/
class XPower implements SuperModuleInterface
{
public function activate(array $target)
{
// 这只是个例子。。具体自行脑补
}
}
/**
* 终极炸弹 (就这么俗)
*/
class UltraBomb implements SuperModuleInterface
{
public function activate(array $target)
{
// 这只是个例子。。具体自行脑补
}
}
控制器写法:
class Superman
{
protected $module;
public function __construct(SuperModuleInterface $module)
{
$this->module = $module;
}
}
网友评论