Laravel中怎么利用Provider 创建 Service
更新:HHH   时间:2023-1-7


这篇文章将为大家详细讲解有关Laravel中怎么利用Provider 创建 Service,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

1、定义服务类

我们这里先定义一个绑定到容器的测试类TestService,为了对类的定义加以约束,我们同时还定义一个契约接口TestContract

定义TestService如下:

2、创建服务提供者

接下来我们定义一个服务提供者TestServiceProvider用于注册该类到容器。创建服务提供者可以使用如下Artisan命令:

该命令会在app/Providers目录下生成一个TestServiceProvider.php文件,我们编辑该文件内容如下:

3、注册服务提供者

定义完服务提供者类后,接下来我们需要将该服务提供者注册到应用中,很简单,只需将该类追加到配置文件config/app.phpproviders数组中即可:

4、测试服务提供者

这样我们就可以在应用中使用该服务提供者了,为了测试该服务提供者我们首先使用Artisan命令创建一个资源控制器TestController

php artisan make:controlle TestController --resource  // 该命令创建资源控制器

然后在路由配置文件routes.php中定义路由:


最后去TestController中编写测试代码:

注意: 在控制器中的构造函数中

返回TestService实例是因为在TestServiceProvider中进行了绑定,在callback函数中实例化了TestService这个类并且返回

然后我们去浏览器中访问http://laravel.app:8000/test,分别测试使用App::make和依赖注入解析绑定类调用callMe方法的输出,结果一样,都是

关于Laravel中怎么利用Provider 创建 Service就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

返回web开发教程...