gobline / injector

v2.0.1 2015-12-07 15:54 UTC

This package is auto-updated.

Last update: 2024-09-12 18:51:50 UTC


README

注入组件允许您使用 特质 注入依赖。

用法

$injector = (new Gobline\Injector\TraitDependencyInjector())
    ->register("Dependency\\ServiceATrait", function ($o) use ($dic) { $o->setServiceA($dic['service.a']); });
    ->register("Dependency\\ServiceBTrait", function ($o) use ($dic) { $o->setServiceB($dic['service.b']); });

$injector->inject($consumer);

在上面的示例中,如果消费者使用 Dependency\\ServiceATrait 特质,注入器将通过特质中定义的设置器 setServiceA() 注入匹配的服务。

为了实现这一点,注入器利用 反射 来查找消费者使用的特质。

安装

您可以使用依赖管理工具 Composer 安装注入组件。运行 require 命令以解析和下载依赖。

composer require gobline/injector