控制器:接收用户的请求,处理或交后台程序处理用户请求,将结果反馈给用户(响应)。
请求对象:可以理解为一个URL地址,它包括服务器域名、文件及路径、参数等。
依赖注入:通常在一个类中引用另一个类的方法可以在类中直接实例化(new)要引用的类,但这会让当前类与被引用的类之间产生高度的依赖关系,即高度耦合,给日后维护带来隐患。为抵消掉这种依赖关系(解藕),可以通过参数的方式传递到当前类中,即依赖注入,也就是将当前类依赖的对象以参数的方式注入到当前类中。 实现依赖注入的方式: 构造方法中实现 、普通方式中实现
实例
<?php class Girl { public function work() { return '会做饭'; } public function hobby() { return '爱购物'; } } //1. 构造方法实现依赖注入 class Boy1 { private $girl = null; public function __construct(Girl $girl) { $this->girl = $girl; } public function getInfo() { // $girl = new Girl(); // return '我的女朋友'.$girl->work(); return '我的女朋友'.$this->girl->work(); } } //将实例化外部对象的语句放在了类的外部 $girl = new Girl; $boy1 = new Boy1($girl); echo $boy1->getInfo(); echo '<hr>'; //2.用普通方式实现依赖注入 class Boy2 { public function buy(Girl $girl) { return '我的女朋友'.$girl->hobby(); } } $girl = new Girl; $boy2 = new Boy2(); echo $boy2->buy($girl);
运行实例 »
点击 "运行实例" 按钮查看在线实例