jtaurus/autoinstantiator

此包最新版本(dev-master)没有可用的许可信息。

使用PHP反射API自动对象解析的演示。

dev-master 2015-08-22 06:17 UTC

This package is not auto-updated.

Last update: 2024-10-02 09:39:22 UTC


README

使用PHP反射API自动对象解析的演示。

它是如何工作的

将类名传递给Autoinstantiators的build方法,并接收一个具有所有依赖项实例化的对象

$barInstance = (new AutoInstantiator())->build("jtaurus\autoinstantiator\Bar")

Bars构造函数

public function __construct(Foo $fooInstance, Baz $bazInstance, $someString = "somethingValue")

AutoInstantiator将检查指定的类构造函数。如果它有任何我们能够解决的依赖项,它将它们添加到依赖项数组中,并使用ReflectionClass::newInstanceMethod($args)将它们组装成给定类的新实例。

适用于类型提示参数和具有默认值的参数。

不适用于没有至少这些参数之一的参数。我们无法知道应该给它赋予什么值。