我的 cron 工作中有一个奇怪的错误。一开始,当我运行 cron 作业时,它工作正常。那时我通常定义变量。像,$ck_host='abc';
。但是现在我更改代码并从 laravel 的 .env 文件中访问相同的变量。像,$ck_host=$_ENV['CK_HOST'];
。当我在浏览器中运行时,它工作正常。但在 cron 作业中,它显示未定义索引:CK_HOST。我附上了日志的图像。
笔记:
- 我正在使用vlucas/phpdotenv来访问 env 文件。
- 所有的 cron 都不在 Laravel 中。有一些在核心 PHP 中。问题出在核心 PHP 中。
- 在github中发布问题。但是没看懂答案。
我认为:
问题是我在代码中调用 .env 文件的位置。该玉米供应商无法使用该功能。
$dotenv = new Dotenv\Dotenv($doc_root);
$dotenv->load();
$doc_root
包含 env 文件的路径。请再次注意,所有文件都在浏览器中运行,但是当我运行 cron 时,我也在编写一个日志文件。错误就来了。
请帮我。或者告诉我如何在没有任何 laravel 供应商的情况下使用 .env 文件。
提前感谢您的帮助。