dugajean/pouch

适用于PHP项目的微型IoC容器,具备自动解析功能。

2.2.3 2019-06-07 08:12 UTC

This package is auto-updated.

Last update: 2024-09-20 18:13:20 UTC


README

Build Status Latest Stable Version Total Downloads License

微型IoC容器,具有出色的自动注入等功能 - 适用于您的PHP项目。

需求

安装

通过Composer

$ composer require dugajean/pouch

用法

您可以使用此包将整个 src/ 文件夹注册,以在命名空间内自动解析。

<?php

use Pouch\Pouch;

Pouch::bootstrap(__DIR__);

// ...

pouch()->registerNamespaces('Foo'); // Foo corresponds to src/

现在,您可以直接为方法所需的对象使用类型提示,它将自动为您解析。

<?php

namespace Foo;

class Bar
{
    public function doSomething(Baz $baz)
    {
        $baz->doSomethingElse();
    }
}

class Baz
{
    public function doSomethingElse()
    {
        echo 'From Baz!';
    }
}

构造函数对象参数也将自动注入。

您始终可以使用 pouch()->bind($key, $dataClosure) 手动将数据绑定到容器,并使用 pouch()->get($key) 从容器中解析任何内容。

阅读wikiAPI文档 获取更多信息。

测试

$ vendor/bin/phpunit

变更日志

请参阅CHANGELOG 了解最近更改的内容。

许可证

Pouch遵循MIT许可证发布。