首页  >  文章  >  php框架  >  laravel中ioc控制反转是什么

laravel中ioc控制反转是什么

WBOY
WBOY原创
2022-03-15 11:22:082901浏览

在laravel中,IOC控制反转是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度,就是一个类把自己的的控制权交给另外一个对象,类间的依赖由这个对象去解决。

laravel中ioc控制反转是什么

本文操作环境:Windows10系统、Laravel6版、Dell G3电脑。

laravel中ioc控制反转是什么

控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。

其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency Lookup)。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体,将其所依赖的对象的引用传递给它。

简单说来,就是一个类把自己的的控制权交给另外一个对象,类间的依赖由这个对象去解决。依赖注入属于依赖的显示申明,而依赖查找则是通过查找来解决依赖。

控制反转(IoC): 不需要自己内容修改,改成由外部传递。从依赖内部改为依赖外部。

控制反转(IOC):Inversion Of Control,'控制'是对程序执行流程的控制,'反转'是没使用框架前,程序员自己控制整个程序执行,使用框架后,控制权从程序员反转到了框架。

注入一个类:

App::bind('foo', function($app)
{
    return new FooBar;
});

这个例子的意思是创建一个别名为 foo 的类,使用时实际实例化的是 FooBar。

使用这个类的方法是:

$value = App::make('foo');

$value 实际上是 FooBar 对象。

如果希望使用单例模式来实例化类,那么使用:

App::singleton('foo', function()
{
    return new FooBar;
});

这样的话每次实例化后的都是同一个对象。

【相关推荐:laravel视频教程

以上是laravel中ioc控制反转是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn