依赖注入:将当前类依赖的对象,以参数的方式注入到当前类中,简称依赖注入
<?php class Mi { public function size() { return '5.99寸全面屏'; } public function feature() { return '屏下指纹解锁'; } }
1. 构造方法实现依赖注入
class Mi7 { private $Mi = null; public function __construct(Mi $mi) { $this->mi = $mi; } public function getInfo() { return '小米8:'.$this->mi->size(); } } //将实例化外部对象的语句放在了类的外部 $mi = new Mi; $Mi7 = new Mi7($mi); echo $Mi7->getInfo(); echo '<hr>';
2.用普通方式实现依赖注入
class Mi8 { public function buy(Mi $mi) { return '小米8:'.'特色功能:'.$mi->feature(); } } $mi = new Mi; $mi8 = new Mi8(); echo $mi8->buy($mi);