繁体   English   中英

getenv在运行php脚本时从终端返回null

[英]getenv return null from terminal while running php script

我在httpd.conf(Apache)setEnv = prod中定义
并在php中调用ENV(使用getenv()函数)

从terminal(mac)php file.php运行时,env为NULL
但是当我从网页上运行它时,它的工作正常了; 并打印“产品”

有多种方法可以设置在macOS和Linux中的控制台(终端)中运行的程序的环境。 (步骤在Windows上相似,但语法不同。)

您可以将env=prod放在命令行前面,以仅针对该命令行的当前执行将环境变量env设置为prod值:

$ env=prod php -f script.php

您可以将export env=prod用作单独的命令行。 它为您在控制台中运行的Shell的当前执行设置环境值env和值prod 它前面的export关键字告诉shell将变量传递给它从现在开始启动的所有进程(直到关闭shell或取消设置变量):

$ export env=prod
$ php -f script.php

如果要永久设置变量,则将export env=prod放在~/.profile~/.bashrc或您首选外壳程序的初始化脚本中(如果不是bash )。 您启动的Shell的所有后续实例都将执行初始化脚本,并在其环境中使用值prod设置env变量,并将其标记为可导出到Shell启动的子进程。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM