我想使用 PHP 在 LINUX 中创建用户定义的环境变量。我使用 putenv() 尝试了它,但它只持续到当前请求。
我也尝试使用反引号来执行它。如
VARNAME="777";
;
export VARNAME
;
但它没有显示打印 printenv 的变量和值。如何使用 php 创建环境变量。
如何执行
VARNAME="777"; 使用 PHP 导出 VARNAME?
你可以试试exec("export VARNAME=777");
但...
我不相信在与 apache 的请求之间存在持久环境之类的东西。为特定命令设置环境可能需要做的一件事是在 apache 可访问的某个地方设置一个文本文件,并用您的环境变量填充它,每行一个
VARNAME=777
MY_VAR=COOL
然后创建一个这样的函数运行环境
function runWithEnvironment($cmd, $envronmentFile, &$output){
$env = file ($environmentFile, FILE_IGNORE_NEW_LINES);
foreach($env as $line){
putenv($line);
}
$ret=null;
exec($cmd, $output, $ret);
return $ret;
}
这应该抽象出在执行命令之前设置环境。