PHP得到system()命令的PID

时间:2012-05-15 01:24:59

标签: php unix

我正在尝试从php网页上找到后台系统调用的PID。如果我从PHP脚本中调用'ps -A'并将其打印到我的浏览器,则它与我的终端中调用'ps -A'的输出不同。这特别令人沮丧,因为我可以看到PHP从我的终端调用的后台进程的PID,但不是来自PHP内部。

换句话说,我的代码如下所示:

system("process &");
system("ps -A");

但这并不会产生与从终端调用'ps -A'相同的输出。不仅如此,“进程”显示在终端中,而不是来自PHP调用。

任何人都可以向我解释为什么会这样,以及如何从我的PHP代码中获取'process'的PID? (为了记录,我也尝试使用代码的变体,包括使用exec()和passthru(),到目前为止都没有。)

感谢。

1 个答案:

答案 0 :(得分:2)

echo $!

将获得最后一个命令的PID,所以..

system("process & echo $!");