cviniciussdias / dependency-resolver
依赖解析器。一个用于解析类依赖关系并自动实例化的简单组件。
v1.0.4
2017-04-22 23:05 UTC
This package is not auto-updated.
Last update: 2024-09-18 20:27:58 UTC
README
🛑 注意!
此项目仅用于教学目的,因此不应在生产环境中运行。
描述
这是一个简单的依赖解析器,用于解析类依赖关系并自动实例化它们。
安装
使用以下命令安装最新版本:
$ composer require cviniciussdias/dependency-resolver
用法
<?php use CViniciusSDias\DependencyResolver\Resolver; // Classes definitions class Class1 { private $class2; public function __construct(Class2 $class, Class3 $class3) { echo $class3->method(); $this->class2 = $class; } public function test() { echo $this->class2; } } class Class2 { public function __construct(Class3 $test, $param = 'default value') { echo $param . PHP_EOL; } public function __toString() { return 'Class2::__toString()'; } } class Class3 { public function __construct($paramWithoutDefaulValue) { } public function method() { return 'Class3::method()' . PHP_EOL; } } // Resolver usage $resolver = new Resolver(); $resolver->setParameters(Class3::class, ['paramWithoutDefaulValue' => 'manual value']); $class1 = $resolver->resolve(Class1::class); $class1->test();
作者
Vinicius Dias - carlosv775@gmail.com - https://github.com/CViniciusSDias/
许可证
此组件受GPL许可证的许可