拼命寻找 Laravel 中的非空 $_ENV

Desperately looking for a non empty $_ENV in Laravel

我有一个控制台任务 运行 通过:

$schedule->command('process:job')
            ->cron('* * * * *')
            ->withoutOverlapping();

任务是运行,它可以调用不同的服务,世界上一切都很好。但是我有一个特定的任务调用不同的 class,其中未加载配置。

出于特定原因,我希望在 $_ENV 中阅读我的配置(它允许我进行一些键值迭代并专门根据模式处理一些键)。但是这里 $_ENV 仍然是空的,我可以通过 config()env().

读取配置

这不会通过 HTTP 调用或某些命令行调用发生(我无法理解调度程序调用和命令行调用的区别)。

Laravel 5.6

编辑:这个问题留在这里是因为我没能找到现有的相关问题Why is my $_ENV empty?

在这里找到我的解决方案:Why is my $_ENV empty?

基本上 $_ENV 不会系统地填充,但只有当标志 E 在您的 variables_order ini 变量中时才会填充。因此,如果您遇到同样的问题,我建议您快速检查一下。

var_dump(ini_get('variables_order'));

修复显然是为了修复您的 ini 文件。