博主信息
博文 100
粉丝 8
评论 2
访问量 174831
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
控制器与请求对象的功能与用途,依赖注入的实现原理(构造器与普通方法)--20180523-23:36发布(22日作业)
lilove的博客
原创
944人浏览过

个人理解:

1.控制器与请求对象的功能与用途:

如果我用一句话来说,控制器就是应答网络请求对象中的数据,并将请求数据进行操作后,将结果返回给请求方的过程中使用的工具。


2. 依赖注入的实现原理:构造方法与普通方法

实现效果:

QQ截图20180524002808.png

代码实例与解释:

<?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);

运行实例 »

点击 "运行实例" 按钮查看在线实例


批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学