美文网首页
43. 服务容器 上下文绑定

43. 服务容器 上下文绑定

作者: 独步天堂 | 来源:发表于2017-10-05 21:49 被阅读6次

有时候,你可能有两个类使用了相同的接口,但你希望每个类都能注入不同的实现。例如,两个控制器可能需要依赖不同的 Illuminate\Contracts\Filesystem\Filesystem 契约 实现。 Laravel 提供了一个简单、优雅的接口来定义这个行为:

use Illuminate\Support\Facades\Storage;
use App\Http\Controllers\PhotoController;
use App\Http\Controllers\VideoController;
use Illuminate\Contracts\Filesystem\Filesystem;

$this->app->when(PhotoController::class)
          ->needs(Filesystem::class)
          ->give(function () {
              return Storage::disk('local');
          });

$this->app->when(VideoController::class)
          ->needs(Filesystem::class)
          ->give(function () {
              return Storage::disk('s3');
          });

相关文章

  • 43. 服务容器 上下文绑定

    有时候,你可能有两个类使用了相同的接口,但你希望每个类都能注入不同的实现。例如,两个控制器可能需要依赖不同的 Il...

  • 【2】docker 基本操作.md

    【2】docker 基本操作 基本命令 示例 容器操作 绑定服务到TCP端口 提交(保存)容器状态

  • docker常用命令

    绑定远程docker服务器 打镜像 启动docker镜像 启动服务 停止服务 重启服务 查看服务日志 删除容器 删...

  • 7.端口绑定

    VII. 端口绑定 通过端口绑定(Port binding)来提供服务 互联网应用有时会运行于服务器的容器之中。例...

  • 41. 服务容器 绑定基础

    在服务提供器中,你可以通过 $this->app 属性访问容器。 简单绑定我们可以通过 bind 方法注册绑定,传...

  • Laravel 中的一些概念

    laravel 中的一些概念 核心概念 容器:是运行依赖和注入的场所;几乎所有服务容器的绑定都是在服务提供者中进行...

  • IoC容器类

    IoC容器是laravel核心服务,类通过把类的生成方法bind绑定到IoC容器中,然后通过make生产,可以减少...

  • Spring 容器(Spring 的上下文)

    Spring 容器(Spring 的上下文)

  • SaaS应用12原则:(七)端口绑定

    通过端口绑定(Port binding)来提供服务 互联网应用有时会运行于服务器的容器之中。例如 PHP 经常作为...

  • IBM Bluemix 12 个月试用 免费申请 教程

    IBM 的 Bluemix 提供永久免费的服务,常规服务需要绑定信用卡,每个月能免费用 512M 的容器 但是这里...

网友评论

      本文标题:43. 服务容器 上下文绑定

      本文链接:https://www.haomeiwen.com/subject/wpwkyxtx.html