php如何注入依赖,如何在简单的php函数中使用“依赖注入”,我应该打扰吗?

我一直听到人们在谈论依赖注入及其带来的好处,但是我并不真正了解它。

我想知道这是否是“我一直将数据库连接作为参数传递”的解决方案。

我尝试阅读有关Wikipedia的条目,但是该示例是用Java编写的,因此我不太了解它试图阐明的区别。 ([http://en.wikipedia.org/wiki/Dependency_injection])。

我读了这篇php-dependency-injection-in文章([http://www.potstuck.com/2009/01/08/php-dependency-injection/]),似乎目标是不将依赖项传递给 直接创建一个对象,但是将对象的创建与依赖关系的创建绑定在一起。 我不确定如何在使用php函数的上下文中应用它。

此外,是否存在以下依赖关系注入,是否应该在功能上下文中尝试进行依赖关系注入?

版本1 :(我每天创建但不喜欢的那种代码)

function get_data_from_database($database_connection){

$data = $database_connection->query('blah');

return $data;

}

版本2 :(不必通过数据库连接,但也许不必进行依赖注入?)

function get_database_connection(){

static $db_connection;

if($db_connection){

return $db_connection;

} else {

// create db_connection

...

}

}

function get_data_from_database(){

$conn = get_database_connection();

$data = $conn->query('blah');

return $data;

}

$data = get_data_from_database();

版本3 :(“对象” /数据的创建是分开的,并且数据库代码仍然是,所以也许这可以算作依赖注入?)

function factory_of_data_set(){

static $db_connection;

$data_set = null;

$db_connection = get_database_connection();

$data_set = $db_connection->query('blah');

return $data_set;

}

$data = factory_of_data_set();

任何人都有很好的资源或独到的见解可以使方法和收益清晰明了?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值