我尝试使用根目录下的.env获取环境变量
Route::get('/test', function () {
return "value is". getenv('APP_ENV');
});
和
Route::get('/test', function () {
return "it is". env('APP_ENV');
});
它在.env中
APP_NAME=Laravel
APP_ENV=local
我如何获得它?
答案 0 :(得分:3)
使用Laravel,您应该避免配置文件之外的环境变量。
在配置文件中,您可以使用环境变量,例如config / app.php中的示例:
'env' => env('APP_ENV', 'production'),
然后,您可以使用配置帮助器config('app.env')
来访问它。
这使您可以缓存配置并仍然访问这些值,因为env('APP_ENV')
一旦配置被缓存,将不再起作用。
答案 1 :(得分:2)
Route::get('/test', function () {
return "it is".config('app.name');
});
答案 2 :(得分:1)
laravel为此类任务提供了全局帮助器功能
$val = config('app.something');
您还可以使用以下方法设置新值
config(['app.something' => 'cat']);
对于您的特定任务将是
$val = config('app.env');
或确定全局环境
$environment = App::environment();
我希望这对您有帮助!
答案 3 :(得分:1)
echo App :: environment()
请尝试
答案 4 :(得分:0)
根据Environment Configuration上的Laravel文档,
此文件中列出的所有变量将被加载到$ _ENV中 当您的应用程序接收到请求时,PHP为超级全局。您可以使用 环境助手从这些变量中检索值。
因此,可以通过
来访问变量$_ENV['envKey'];
答案 5 :(得分:0)
使用env('ENVKEY')
不要忘记在某些时候清除由于缓存而引起的缓存。
php artisan config:clear
php artisan cache:clear
composer dump-autoload
有关更多信息,请查看doc
答案 6 :(得分:0)
只需在cmd中运行此命令即可。
php artisan config:cache
然后
php artisan config:clear
然后
php artisan cache:clear