首页 » 网站推广 » php依附注入反射技巧_10分钟快速理解依靠注入

php依附注入反射技巧_10分钟快速理解依靠注入

访客 2024-11-16 0

扫一扫用手机浏览

文章目录 [+]

业务场景

小明要去旅游,但是还未确定以什么办法出游,有可能是徒步旅行,也有可能是自驾游。

php依附注入反射技巧_10分钟快速理解依靠注入

代码演示

php依附注入反射技巧_10分钟快速理解依靠注入
(图片来自网络侵删)

根据步辇儿和驾车的速率来考虑间隔旅游目的地的路程,以是这里定义了两个属性$speed和$distance。
所有有了如下代码:

interface travelInterface{ public function __construct($speed, $distance); public function run();}abstract class travel implements travelInterface{ protected $speed; // 最高时速 protected $distance; // 最远路程 public function __construct($speed, $distance) { $this->speed = $speed; $this->distance = $distance; }}class drive extends travel{ public function run() { echo \"大众自驾游\公众; }}class walk extends travel{ public function run() { echo \"大众徒步旅行\"大众; }}

下面是选择自驾游的代码

class human{ protected $travel; // 出行办法 public function __construct() { $this->travel = new drive(60,1000); } public function traveling(){ $this->travel->run(); }}$xiaoming = new human();$xiaoming->traveling();

那么,如果须要换一种出行办法的时候,则须要修正human类。
这里看起来修正非常大略,但是我们实际项目中可能会夹杂着很多的业务逻辑一起修正。

就说下依赖注入的根本办法

class human{ protected $travel; // 出行办法 public function __construct(travel $travel) { $this->travel = $travel; } public function traveling(){ $this->travel->run(); }}$travel = new drive(60,1000);$xiaoming = new human($travel);$xiaoming->traveling();

什么是依赖注入。

大略的说:在A类中利用了B类的实例时,B工具的布局不是在A类某个方法中初始化的,而是在A类外部初始化之后以B类的工具传入进来。
这个过程便是依赖注入。

换一种通过配置文件来实现掌握反转

$config = [ \"大众travel\"大众 => drive::class,];$travel = new $config[\"大众travel\"大众](60,1000);$xiaoming = new human($travel);$xiaoming->traveling();

通过上面的办法,以什么办法旅行,只须要修正配置$config就行。

这在我们PHP里感触不明显,以为修正$config和修正$travel = new drive(60,1000)差别不到,一方面是便于管理,另一方面是PHP的非编译型的特性上风。
如果用Java来实现,感触就非常明显了,比如程序已经打包了,只须要修正配置文件,就可以掌握类的依赖关系了。
起到理解耦的浸染。
(千锋PHP培训)

虽然很多时候大家一说到掌握反转,依赖注入,就非要和说到反射,我以为上面IOC只是一种思想,详细的实现办法,在不同的措辞中有不同的表现形式。
只要将这种依赖关系解耦出来,可以配置化便是IOC的实现了。

标签:

相关文章

介绍直播新纪元,轻松进入直播的五大步骤

随着互联网技术的飞速发展,直播行业在我国逐渐崛起,越来越多的人选择通过直播这一新兴媒介展示自己、分享生活、传递价值。对于许多新手来...

网站推广 2025-01-03 阅读1 评论0

介绍相机美颜原理,科技与美学的完美结合

随着科技的发展,智能手机的摄像头功能日益强大,美颜相机成为了许多人拍照的首选。美颜相机不仅满足了人们对于美的追求,更在视觉上给人带...

网站推广 2025-01-03 阅读1 评论0

介绍磁铁的制造,科学与艺术的完美结合

磁铁,一种神秘的物质,自古以来就吸引了无数人的目光。它不仅具有独特的磁性,还能在工业、医疗、科研等领域发挥重要作用。磁铁是如何制造...

网站推广 2025-01-03 阅读1 评论0

介绍电瓶激活方法,让电池焕发新生

随着科技的不断发展,电动汽车逐渐成为人们出行的首选。而电瓶作为电动汽车的核心部件,其性能直接影响着车辆的续航里程和行驶体验。新购买...

网站推广 2025-01-03 阅读1 评论0