apinephp / container
一个简约的PSR-11依赖容器
2.0.0
2019-12-13 09:19 UTC
Requires
- php: >=7.4
- apinephp/resolver: ^2
- psr/container: ^1.0
Requires (Dev)
- phpunit/phpunit: ^7
- psr/http-message: ^1.0
- vimeo/psalm: ^3.0
README
一个简约的PSR-11 DI和IoC容器
安装
使用composer进行安装
composer require apinephp/container
该包需要PHP 7.4或更高版本。
使用示例
<?php
use Apine\Container\Container;
$container = new Container();
$container->register('service', function () {
return 'A service';
});
$container->get('service'); // 'A service'
使用服务进行DI
使用createInstance函数实例化新的服务。它会产生一个Closure,该闭包将创建类的实例,并应用依赖解析和注入容器中的服务。
<?php
use Apine\Container\Container;
use function Apine\Container\createInstance;
$container = new Container();
$container->register('service', createInstance(StubClass::class));
$service = $container->get('service'); // Returns an instance of StubClass