PHP CLI 为 $_SERVER 添加值

PHP CLI 为 $_SERVER 添加值

我知道我可以通过 Nginx 向 $_SERVER 变量添加自定义值

fastcgi_param MY_VARIABLE "myValue";

是否可以将相同的变量添加到 PHP CLI $_SERVER?这将专门用于 cron 作业。我正在使用 Ubuntu 服务器。

我发现的一个选项是调用 PHP 脚本

$ MY_VARIABLE="myValue" php /path/to/php/script

但这似乎不太理想。

默认情况下,环境变量不会发送到 PHP,据我所知,这样做会稍微降低速度。如果可能的话,我想避免这种情况。

答案1

我发现的最佳解决方案是将变量放入 /etc/environment。其中的设置由 cron 作业和 CLI 加载并显示在 PHP $_SERVER 中。

默认情况下,/etc/environment 中有一行用于 PATH。只需在文件末尾添加一个新行即可。

PATH="/usr/local/sbin: ... "
MY_VARIABLE="myValue"

顺便说一句,PATH 设置是这个文件似乎被 PHP 覆盖,如 $_SERVER 所示。

PHP Web 服务没有显示该变量,但将其添加到 Nginx 配置中很容易。

相关内容