在Laravel中拼命寻找一个非空的$ _ENV

时间:2019-12-19 11:38:55

标签: laravel phpdotenv

我执行了控制台任务:

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

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

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

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

Laravel 5.6

编辑:此处保留此问题,因为我没有找到现有的相关this

1 个答案:

答案 0 :(得分:0)

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

基本上$_ENV不会系统地填充,而是仅在您的E ini变量中包含标志variables_order的情况下。因此,如果您遇到相同的问题,我建议您进行快速检查。

var_dump(ini_get('variables_order'));

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