Home  >  Article  >  Backend Development  >  laravel中服务提供者绑定到容器有什么作用?

laravel中服务提供者绑定到容器有什么作用?

WBOY
WBOYOriginal
2016-06-06 20:22:101461browse

原先以为将服务提供者绑定到容器后这个类才可以注入,但在laravel5.0中,自己写了一个测试类可以直接注入到controller的构造函数和action函数中。

那么服务提供者绑定到容器具体有什么功能呢?

回复内容:

原先以为将服务提供者绑定到容器后这个类才可以注入,但在laravel5.0中,自己写了一个测试类可以直接注入到controller的构造函数和action函数中。

那么服务提供者绑定到容器具体有什么功能呢?

如果是class的话,是不需要通过ServiceProvider 绑定的,class会自动注入。但是如果是interface的话,laravel的container需要知道是哪个实现,所以你要通过ServiceProvider来把interface和实现的class绑定起来。你可以试试,如果不绑定的话,你在controller里面注入一个interface是会报错的。

主要是解耦,降低程序的耦合,请参见 设计模式

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn