博客列表 >控制器与请求对象功能,实例讲解依赖注入实现原理 2018年5月23日11:58

控制器与请求对象功能,实例讲解依赖注入实现原理 2018年5月23日11:58

豆芽的博客
豆芽的博客原创
2018年05月23日 07:26:10787浏览

1、描述控制器与请求对象的功能与用途

答:控制器是核心,负责处理各种请求与响应,所有的访问,页面渲染,各类操作等都离不开控制器,控制器类似电脑的CPU。请求对象可以理解为一个URL地址,就是url请求。

2、实例讲解依赖注入的实现原理(构造器与普通方法)

答:依赖注入就是当我们向方法中传入对象的时候需要使用的技术。

普通依赖注入方法:

<?php
//对象依赖注入
class Girl
{
	public function work()
	{
		return '会做饭';
	}
	public function hobby()
	{
		return '爱购物';
	}
}
class Boy
{
	public function getInfo()
	{
		$girl = new Girl;
		return 'my girlfriend'.$girl->work();
	}
}
$boy = new Boy;
echo $boy->getInfo();
echo '<hr>';
/医院
 * 依赖注入:将当前依赖的对象,以参数的形式传入到方法中
 * 1、用构造方法实现依赖注入
 */
class Boy1
{
	//girl属性,存放实例化类后的生成的对象
	private $girl = null;
	public function __construct(Girl $girl)
	{
		$this->girl = $girl;
	}
	public function getInfo()
	{
		return 'my girlfriend'.$this->girl->work();
	}
}
$girl = new Girl;
$boy1 = new Boy1($girl);
echo $boy1->getInfo();
echo '<hr>';

//2、用普通方法实现依赖注入
class Boy2
{
	public function buy(Girl $girl)
	{
		return 'my girlfriend'.$girl->hobby();
	}
}
$girl = new Girl;
$boy2 = new Boy2;
echo $boy2->buy($girl);
echo '<hr>';

?>
<?php
namespace app\index\controller;
//use think\Request;//导入命名空间
//下面这个方法是请求对象的注入
public function index(\think\Request $request)
{
    $res = $request->param();
    dump($res);
}
?>


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议