为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel 不从不同的 env 文件中读取 env 变量

Laravel 不从不同的 env 文件中读取 env 变量

PHP
慕慕森 2021-10-15 16:51:45
从 5.0 升级到 5.8 后,如果 env 与 .env 文件不同,laravel 将停止读取 env 变量。例如,如果我有里面的.env文件USE_SSL=true。 env('USE_SSL')会是真的但是如果我有.env文件指向另一个环境:APP_ENV=dev并且比我有.env.dev包含USE_SSL=true, 的文件env('USE_SSL')将为空。我试过composer dump-autoload和php artisan config:clear,而且php artisan config:cache- 没有运气。缓存与否,我无法获得价值。我尝试将文件命名为 .dev.env 和 .env.dev - 没有运气。任何想法,将不胜感激。
查看完整描述

2 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

好吧,如果你真的想这样做,


Route::get('renderEnvChaining',function(){

    $myCustomEnv = parse_ini_file(base_path(env('CUSTOM_ENV')));

   return $myCustomEnv['USE_SSL']; // This will return true

});

在我的 .env 文件中,我提到了这一点,


CUSTOM_ENV=.env.example

现在我在默认 env.example 我把这个


USE_SSL="true"  // This will return true

USE_SSL=true    // This will return 1

我刚刚发现 .ini 和 .env 遵循相同的值,所以我将 .env 文件解析为 .ini 文件,


试试这个,我以前从未做过这件事,在将它运行到生产服务器之前,请与其他开发人员联系


查看完整回答
反对 回复 2021-10-15
  • 2 回答
  • 0 关注
  • 202 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信