通过 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 中定义的服务提供者。