PHPComponent/DI 是一个依赖注入容器

0.2.6 2017-10-15 19:02 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:03:31 UTC


README

DI 是依赖注入容器。它将构建你的应用程序的整个依赖树。

配置示例

你可以使用 PHP 配置容器。例如,你有一个名为 Translator 的类,它有一个构造函数参数 $default_language

class Translator
{
    /** @var string */
    private $default_language;
    
    public function __construct($default_language)
    {
        $this->default_language = $default_langauge;
    }
}

然后你配置容器。

$parameters = new \PHPComponent\DI\ParametersBag(array('default_language' => 'en'));
$container_builder = new \PHPComponent\DI\ContainerBuilder($parameters);
$container_builder->registerService('translator', Translator::class)
    ->setArguments(array('%default_language%'));
$translator = $container_builder->getService('translator');

当你调用 getService('translator') 时,你将获得默认语言为 en 的 Translator 对象。