viloveul/container
Composer 安装命令:
composer require viloveul/container
包简介
Container of Viloveul. Just like service locator
README 文档
README
Installation
make sure your php version > 7.0
composer require viloveul/container
How
require __DIR__ . '/vendor/autoload.php'; $container = Viloveul\Container\ContainerFactory::instance(); class YourClassA { public $name = 'Hello'; } class YourClassB { public $name = null; public function __construct(YourClassA $a) { $this->name = $a->name; } } $result = $container->make(YourClassB::class); var_dump($result);
or
require __DIR__ . '/vendor/autoload.php'; $container = new Viloveul\Container\Container(); interface EntityInterface { } class YourClassA implements EntityInterface { public $name = 'Hello'; } class YourClassB { public $name = null; public function __construct(EntityInterface $entity) { $this->name = $entity->name; } } $container->set(EntityInterface::class, YourClassA::class); $result = $container->make(YourClassB::class); var_dump($result); $entity = $container->get(EntityInterface::class); var_dump($entity); $container->set('world', function(EntityInterface $entity) { return new YourClassB($entity); }); $world = $container->get('world'); var_dump($world); $maybe = $container->invoke(function(EntityInterface $entity) { return $entity; }); var_dump($maybe);
统计信息
- 总下载量: 189
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 2
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2018-12-28