服务容器

未匹配的标注
本文档最新版为 6.x,旧版本可能放弃维护,推荐阅读最新版!

服务容器

简介

Laravel 的服务容器是一个管理类的依赖和执行依赖注入的强力工具。依赖注入其实是个花哨的名词,它实际上就是指:类的依赖通过构造器或者在某些情况下,通过「setter」方法「注入」。

与 Laravel 的不同之处

Lumen 使用了与 Laravel 框架相同的服务容器,所以你可以使用它们所有强大的功能。有关容器的完整文档,请阅读完整的 Laravel 容器文档

获取服务器容器

Laravel\Lumen\Application 实例是 Illuminate\Container\Container 的一个扩展,所以在你的应用程序中,你可以把它当作服务器容器来使用。

通常来说,我们会在服务提供者当中去注册容器的解析规则。当然你可以使用 bindsingletoninstance ,以及容器提供的其他方法。请记住,所有关于容器的方法都记录在完整的Laravel 服务容器文档 中。

解析实例

要从服务器容器中解析实例,你可以在大部分的功能类里通过「依赖注入」自动解析,比如路由 Closuer,控制器的构造方法,控制器方法,中间件,甚至是事件的监听器,或者队列任务。或者,你也可以在应用程序中的任何地方使用 app 函数进行实例解析:

$instance = app(Something::class);

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/lumen/5.5/servi...

译文地址:https://learnku.com/docs/lumen/5.5/servi...

上一篇 下一篇
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
贡献者:3
讨论数量: 0
发起讨论 只看当前版本


暂无话题~