PHP依赖注入有哪些核心知识点和最佳实践?
- 内容介绍
- 文章标签
- 相关推荐
本文共计714个文字,预计阅读时间需要3分钟。
引言:你知道什么是依赖注入吗?依赖注入(DI)的概念听起来很深奥,但如果你用过一些新颖的PHP框架,对DI一定不会陌生。因为它们大多都用到依赖注入来处理类与类之间的关系。
引言
你知道什么是依赖注入吗?依赖注入(DI)的概念虽然听起来很深奥,但是如果你用过一些新兴的php框架的话,对于DI一定不陌生,因
为它们多多少少都用到了依赖注入来处理类与类之间的依赖关系。
php中传递依赖关系的三种方案
其实要理解DI,首先要明白在php中如何传递依赖关系。
第一种方案,也是最不可取的方案,就是在A类中直接用new关键词来创建一个B类,如下代码所示:
<?php class A { public function __construct() { $b = new B(); } }
为什么这种方案不可取呢?因为这样的话,A与B就耦合在了一起,也就是说A类无法脱离B类工作。
第二种方案就是在A类的方法中传入需要的B类
如下代码所示:
<?php class A { public function __construct(B $b) { } }
这种方法比第一种方案有了改进,A类不必与B类捆绑在一起,只要传入的类满足A类的需求,也可以是C类,也可以是D类等等。但是这
种方案的弊端在于如果A类依赖的类较多,参数列表会很长,容易发生混乱。
本文共计714个文字,预计阅读时间需要3分钟。
引言:你知道什么是依赖注入吗?依赖注入(DI)的概念听起来很深奥,但如果你用过一些新颖的PHP框架,对DI一定不会陌生。因为它们大多都用到依赖注入来处理类与类之间的关系。
引言
你知道什么是依赖注入吗?依赖注入(DI)的概念虽然听起来很深奥,但是如果你用过一些新兴的php框架的话,对于DI一定不陌生,因
为它们多多少少都用到了依赖注入来处理类与类之间的依赖关系。
php中传递依赖关系的三种方案
其实要理解DI,首先要明白在php中如何传递依赖关系。
第一种方案,也是最不可取的方案,就是在A类中直接用new关键词来创建一个B类,如下代码所示:
<?php class A { public function __construct() { $b = new B(); } }
为什么这种方案不可取呢?因为这样的话,A与B就耦合在了一起,也就是说A类无法脱离B类工作。
第二种方案就是在A类的方法中传入需要的B类
如下代码所示:
<?php class A { public function __construct(B $b) { } }
这种方法比第一种方案有了改进,A类不必与B类捆绑在一起,只要传入的类满足A类的需求,也可以是C类,也可以是D类等等。但是这
种方案的弊端在于如果A类依赖的类较多,参数列表会很长,容易发生混乱。

