Thinkphp6-make() 、依赖注入 、 容器
容器ThinkPHP使用容器来更方便的管理类依赖及运行依赖注入,新版的容器支持PSR-11规范。make()创建类的实例 已经存在则直接获取已经创建实例且不需要刷新时直接返回函数需 先bind创建后保存实例到容器依赖注入获取别名如果有实例直接获取app->instances中如果在 app->bind 中, invokeFunction闭包 [使用ReflectionFunction
·
容器
ThinkPHP使用容器来更方便的管理类依赖及运行依赖注入,新版的容器支持PSR-11规范。
make()
创建类的实例 已经存在则直接获取
- 已经创建实例且不需要刷新 时直接返回
- 函数需 先bind
- 创建后保存实例到容器
- 依赖注入
- 获取别名
- 如果有实例直接获取 app->instances 中
- 如果在 app->bind 中 , invokeFunction 闭包 [使用 ReflectionFunction ]
- 类 invokeClass [使用 ReflectionClass]
依赖注入
依赖注入其实本质上是指对类的依赖通过构造器完成自动注入,例如在控制器架构方法和操作方法中一旦对参数进行对象类型约束则会自动触发依赖注入,由于访问控制器的参数都来自于URL请求,普通变量就是通过参数绑定自动获取,对象变量则是通过依赖注入生成。
Container.php / bindParams()
Container.php / getObjectParam( )
使用 make() 返回参数对象的实例
更多推荐
已为社区贡献1条内容
所有评论(0)