(以下是个人笔记,有理解错误的地方请大家指出,谢谢!!!)
1.依赖注入:
在laravel中可以将类直接注入到控制器(类)中;例如:
2.服务容器:
例如我现在注册了一个接口。然后有两个类来实现这个接口,第一个是阿里云短信。第二个是其他的短信。现在公司使用的是阿里云短信,那么我就只需要在。AppServiceProvider.php注册这个接口,来绑定阿里云短信这个类。如果我想换成其他的短信,我只需要在注册的时候将这个接口与其他的短信类绑定就可以了,就是逻辑代码就完全无需改变 ,可以做到完美切换.例如
AppServiceProvider.php
接口:interfaces.php
阿里云短信继承类setinterface.php
实际使用的逻辑控制器UserController.php
总结:在laravel里面,在服务容器里绑定接口之后,可以直接依赖注入这个接口.
3.注册一个自己的服务.
定义一个自己的接口MyService.php
实现这个接口: SetMyService.php
在app\Providers文件夹新建服务提供者MyserviceProvider.php;
将服务注册到配置文件config\app.php
以上,自己的服务就注册完毕;
在随便一个控制器中就可以注入这个接口了.