Correction status:qualified
Teacher's comments:
个人理解:
1.控制器与请求对象的功能与用途:
如果我用一句话来说,控制器就是应答网络请求对象中的数据,并将请求数据进行操作后,将结果返回给请求方的过程中使用的工具。
2. 依赖注入的实现原理:构造方法与普通方法
实现效果:
<?php /*依赖注入实现方式*/ // 先声明一个类 class Car { public function color() { return '白色宝马'; } } // 直接在一个类中实例化另一个类,并调用另一个类的方法虽然可以运行程序,但是禁止的,会高耦合,不利于开发逻辑 // class People // { // public function xiaoming() { // $car = new Car; // return '小明的'. $car->color(); // } // } // $people = new People; // echo $people->xiaoming(); // 正确的方式是用参数传递另一个类的对象(依赖注入) // 1.构造方法 class Person { private $car; //在构造方法里面传入另一个类的对象变量作为参数,注意这里构造方法必须是public方法 public function __construct(Car $car) { $this->car = $car; } public function xiaohong() { return '小红的'. $this->car->color(); } } // 在类外部实例化两个对象,并进行操作 $car = new Car; $person = new Person($car); echo $person->xiaohong(); echo '<hr color="red">'; // 2.普通方法 class Person1 { // 直接在普通方法中传入参数 public function xiaogang(Car $car) { return '小刚的'. $car->color(); } } // 实例化对象,并操作 $car = new Car; $person1 = new Person1; echo $person1->xiaogang($car);
点击 "运行实例" 按钮查看在线实例