在PHP依赖注入中,如何根据构造函数中定义的参数实例化类

时间:2018-12-31 10:54:01

标签: java php dependency-injection

使用Magento(PHP)进行编程时,我在重写类时练习了DI。我可以随意在构造函数中随意添加任何参数,以注入服务依赖项,如下所示:

class X
{
    protected $service_a = null;
    protected $service_b = null;
    ...
    public function __construct(ServiceA $a, ServiceB $b, ... )
    {
        $this->service_a  = $a;
        $this->service_b  = $b;
        ...
    }
}

以某种方式,在实例化类X的某个地方,系统可以自动检测类X的构造函数中的参数定义。不管我如何修改该定义,系统总是将正确的服务传递给构造函数。在Angular中,是同样的故事。

我的问题是如何在PHP和javascript中使其成为可能???如果定义自己的类,则必须根据构造函数定义实例化它。他们如何使过程(检测构造函数中的参数)自动完成?

0 个答案:

没有答案