dugajean / pouch
适用于PHP项目的微型IoC容器,具备自动解析功能。
2.2.3
2019-06-07 08:12 UTC
Requires
- php: ~7.1
- ext-json: *
- psr/container: ^1.0
- psr/simple-cache: ^1.0
- symfony/finder: ^4.3
Requires (Dev)
- phpunit/phpunit: 6.5.13
Suggests
- ext-apcu: Enabling APCu will enhance the performance of Pouch in case no other cache store is available.
README
微型IoC容器,具有出色的自动注入等功能 - 适用于您的PHP项目。
需求
- PHP 7.1+
- 使用Composer的PSR-4标准
安装
通过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)
从容器中解析任何内容。
测试
$ vendor/bin/phpunit
变更日志
请参阅CHANGELOG 了解最近更改的内容。
许可证
Pouch遵循MIT许可证发布。