在控制器中获取环境价值
在我的.env文件中,我有以下内容:
IMAP_HOSTNAME_TEST=imap.gmail.com
IMAP_USERNAME_TEST=myemail@gmail.com
IMAP_PASSWORD_TEST=mypw
现在我想在我的控制器中使用它们。我已经尝试过这个,但没有任何结果:
$hostname = config('IMAP_HOSTNAME_TEST');
$hostname变量等于 null。如何在控制器中使用这些配置变量?
在我的.env文件中,我有以下内容:
IMAP_HOSTNAME_TEST=imap.gmail.com
IMAP_USERNAME_TEST=myemail@gmail.com
IMAP_PASSWORD_TEST=mypw
现在我想在我的控制器中使用它们。我已经尝试过这个,但没有任何结果:
$hostname = config('IMAP_HOSTNAME_TEST');
$hostname变量等于 null。如何在控制器中使用这些配置变量?
试试看:
<?php $hostname = env("IMAP_HOSTNAME_TEST", "somedefaultvalue"); ?>
它不适用于Laravel 5.3 +,如果你想尝试从控制器访问值,如下所示。它始终返回空值
<?php
$value = env('MY_VALUE', 'default_value');
解决方案:相反,您需要在配置文件夹中创建一个文件,例如值.php然后编写如下所示的代码
<?php
return [
'myvalue' => env('MY_VALUE',null),
// Add other values as you wish
然后使用以下代码访问控制器中的值
<?php
$value = \Config::get('values.myvalue')
其中“值”是文件名,后跟键“myvalue”。