gpt4 book ai didi

php - 将变量从 PHP 导出到 shell

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:37:15 24 4
gpt4 key购买 nike

我正在尝试设置一个应该可以从 PHP 外部访问的变量。理想情况下,这应该是局部变量,但也欢迎使用环境变量。

首先,我尝试了 putenv(),但这没有给出任何结果:

$ php -r "putenv('PHP_TEST=string');" ; echo $PHP_TEST

$

当我从同一脚本调用 getenv() 时 — 它会产生正确的“字符串”值。安全模式已关闭,但手册上说“PHP_”前缀对于 safe=on 至关重要,所以我使用它以防万一:)

然后我尝试 system()shell_exec():

$ php -r "shell_exec('PHP_TEST=string');" ; echo $PHP_TEST

$ php -r "shell_exec('export PHP_TEST=string');" ; echo $PHP_TEST

$

有解决办法吗?可能是什么原因?我使用的是 Ubuntu Linux 9.10“Karmic”,但 FreeBSD 服务器给出了相同的结果。

最佳答案

如果你试图将一些输出传递给 shell 变量,你可以这样做:

$ testvar=$(php -r 'print "hello"')
$ echo $testvar
hello

显示导出如何影响事物:

$ php -r '$a=getenv("testvar"); print $a;'
$ export testvar
$ php -r '$a=getenv("testvar"); print $a;'
hello

在这些示例中,交互式 shell 是父进程,显示的所有其他内容都是子进程(以及彼此的 sibling )。

关于php - 将变量从 PHP 导出到 shell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2002970/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com