把.env文件清空,里面写入local,testing,production等,则可以切换对应的环境。 继续优化,把这段代码移到index.php文件中,如下:
$app = require_once __DIR__.'/../bootstrap/app.php';
$app->detectEnvironment(function () use($app) {
$envName = trim(file_get_contents($app->environmentPath().'/.env'));
$app->loadEnvironmentFrom('.env.'.$envName);
});
继续优化成一行代码,把index.php忽略git版本控制,实现多环境互不干扰!
$app = require_once __DIR__.'/../bootstrap/app.php';
$app->loadEnvironmentFrom('.env.online');
在Providers/AppServiceProvider中的register方法判断环境加载所需服务!
if ($this->app->environment() !== 'production') {
$this->app->register(\Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class);
}
|