关于Container是如何工作的,当在Controller中使用Constructor Injection开发者_开发百科或Method Injection时,就已经在使用Container了,因为Container会自动帮你把这些服务解析出来,如:
浅浅落墨 19小时前 开发者_如何学编程
所以容器服务一直都在用,总的来说容器就是分离了服务构造的场所,传统是在被依赖对象内构造所需要的服务,而现在是在容器这个场所内构造所需依赖,而且是自动化的,并自动化注入到被依赖对象内,这样就实现了解耦。
蓝水晶_746 开发者_StackOverflow中文版 19小时前
关于Container和Application的源码解析可以看下:Laravel学习笔记之Container源码解析Laravel学习笔记之IoC Container实例化源码解析
海洋之星1314 开发者_StackOverflow中文版 19小时前
Laravel容器是用来放Service的地方,这些Service就是一个个绑定到容器中的实例对象或闭包或其他的,绑定方式主要三种:bind(),singleton() and instance(),从容器中解析Service方式:make(),这些都在IlluminateContainerContainer,而IlluminateFoundationApplication extends Container。
精彩评论