依赖注入其实本质上是指对类的依赖通过构造器完成自动注入, 例如在 控制器架构方法和操作方法中一旦对参数进行对象类型约束则会自动触发依赖注入 ,由于访问控制器的参数都来
依赖注入其实本质上是指对类的依赖通过构造器完成自动注入,例如在控制器架构方法和操作方法中一旦对参数进行对象类型约束则会自动触发依赖注入,由于访问控制器的参数都来自于URL请求,普通变量就是通过参数绑定自动获取,对象变量则是通过依赖注入生成。
控制器:
<?php namespace app\index\controller; use app\index\model\User; class Debug { protected $user; public function __construct(User $user) { $this->user = $user; } public function hello() { return ‘Hello,‘ . $this->user->name . ‘!‘; } }
模型:
<?php namespace app\index\model; use think\Model; class User extends Model { public $name = ‘我是依赖注入‘; }
运行 app\index\index\debug\hello:
通俗来说,就是你当前操作一个类,但是这个类的某些方法或者功能不是单单只靠这个类就能完成的,而是要借助另一个类的才能完成的。
最直接的标志就是传参数据为对象的时候。
严格来说,你目前操作的是两个类,这两个类之间相互依赖,传参的方式叫注入。
如果你觉得区分不了类的实例化和依赖注入,请参考:
https://blog.csdn.net/mrli113/article/details/70792498
https://www.cnblogs.com/painsOnline/p/5138806.html