Laravel如何友好的修改.env配置文件详解

1646 2017-6-11 22:11

前言

难道每次改 .env 都得通过修改代码来改吗?.env 文件能不能通过在后台配置呢? 其实是很简单就可以实现的,把以下函数加入到你的项目中

示例代码

function modifyEnv(array $data) 
{
 $envPath = base_path() . DIRECTORY_SEPARATOR . '.env';

 $contentArray = collect(file($envPath, FILE_IGNORE_NEW_LINES));

 $contentArray->transform(function ($item) use ($data){
   foreach ($data as $key => $value){
    if(str_contains($item, $key)){
     return $key . '=' . $value;
    }
   }

   return $item;
  });

 $content = implode($contentArray->toArray(), "\n");

 \File::put($envPath, $content);
}

使用

// 你可以更新你想要的任何值 key => value 
$data = [
 'APP_ENV' => 'your_environment',
 'APP_KEY' => 'your_key',
 'APP_DEBUG' => 'trueOrFalse',
 'DB_DATABASE' => 'test',
 'DB_USERNAME' => 'test',
 'DB_PASSWORD' => 'test',
 'DB_HOST' => 'localhost',
 'CACHE_DRIVER' => 'file',
 'SESSION_DRIVER' => 'file',
];

// 或者
$data = [
 'DB_HOST' => '127.0.0.1',
];

// 使用函数更新
modifyEnv($data);

怎样,是不是很简单,这样就可以通过后台图形化配置 Laravel 的 .env 文件啦~

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。