欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

通过 Laravel EnvProviders 扩展包基于应用开发环境加载相应的服务提供者

程序员文章站 2022-06-14 14:06:52
...

1、简介

Laravel EnvProviders为我们在Laravel应用中对服务提供者(Service Provider)的加载进行管理提供了新方式,通过该扩展包我们可以在不同开发环境加载特定的服务提供者。

2、安装

通过Composer安装:

composer require sven/env-providers

然后在 config/app.php 中注册服务提供者 EnvServiceProvider :

// config/app.php'providers' => [    ...    Sven\EnvProviders\EnvServiceProvider::class,];

3、使用

使用前必须要发布扩展包的配置文件:

php artisan vendor:publish --provider="Sven\EnvProviders\EnvServiceProvider"

该命令将扩展包中的配置文件 providers.php 发布到应用根目录的 config 目录下,在这个配置文件中可以看到两个数组: load 和 development_environments 。

在 load 数组中有两个嵌套数组: providers 和 aliases ,这和 config/app.php 中的一样,你可以在 providers 中注册服务提供者,在 aliases 中注册门面。

development_enviroments 中已经设置了一些默认值,你可以按照自己的需求进行修改。这里的值需要和 .env 中 APP_ENV 相匹配,然后应用会根据 .env 中设置的当前开发环境来加载上面 load 中定义的服务提供者。