在控制器中获取环境价值

2022-08-30 07:41:28

在我的.env文件中,我有以下内容:

IMAP_HOSTNAME_TEST=imap.gmail.com
IMAP_USERNAME_TEST=myemail@gmail.com
IMAP_PASSWORD_TEST=mypw

现在我想在我的控制器中使用它们。我已经尝试过这个,但没有任何结果:

$hostname = config('IMAP_HOSTNAME_TEST');

$hostname变量等于 null。如何在控制器中使用这些配置变量?


答案 1

试试看:

<?php $hostname = env("IMAP_HOSTNAME_TEST", "somedefaultvalue"); ?>

答案 2

它不适用于Laravel 5.3 +,如果你想尝试从控制器访问值,如下所示。它始终返回空值

<?php

    $value = env('MY_VALUE', 'default_value');

解决方案:相反,您需要在配置文件夹中创建一个文件,例如值.php然后编写如下所示的代码

文件值.php

<?php

    return [

        'myvalue' => env('MY_VALUE',null),

        // Add other values as you wish

然后使用以下代码访问控制器中的值

<?php

    $value = \Config::get('values.myvalue')

其中“值”是文件名,后跟键“myvalue”。


推荐