返回依赖注入小例子...登陆

依赖注入小例子

兰岚2019-11-25 14:16:56412

<?php 

//对象的依赖注入

class Film{

public function writer(){ return '金庸'; }

public function actor() { return '小龙女,杨过'; }

}

//普通方法实现依赖注入

class query{

 public function getFavor(Film $film) {

 return '我的喜爱的作者'.$film->writer(); }

}

$film = new film();

$query = new query();

echo $query->getFavor($film);//***
//构造方法实现依赖注入

class query1{

private $film = null;

public function __construct(Film $film) {

 $this->film = $film;

 }

public function getFavor1() {

 return '我的喜爱的主演'.$this->film->actor(); }

}

$film = new film();

$query1 = new query1($film);//***

echo $query1->getFavor1();

//在第一个类class1中用到另一个类class2,不可以直接在类class1中new class2会使2个类高度耦合, 可将class2像参数那样直接传给class1中的函数,或者用构造函数初始化进去,即依赖注入。



最新手记推荐

• 用composer安装thinkphp框架的步骤• 省市区接口说明• 用thinkphp,后台新增栏目• 管理员添加编辑删除• 管理员添加编辑删除

全部回复(0)我要回复

暂无评论~
  • 取消回复发送
  • php.cn