我正在尝试从php网页上找到后台系统调用的PID。如果我从PHP脚本中调用'ps -A'并将其打印到我的浏览器,则它与我的终端中调用'ps -A'的输出不同。这特别令人沮丧,因为我可以看到PHP从我的终端调用的后台进程的PID,但不是来自PHP内部。
换句话说,我的代码如下所示:
system("process &");
system("ps -A");
但这并不会产生与从终端调用'ps -A'相同的输出。不仅如此,“进程”显示在终端中,而不是来自PHP调用。
任何人都可以向我解释为什么会这样,以及如何从我的PHP代码中获取'process'的PID? (为了记录,我也尝试使用代码的变体,包括使用exec()和passthru(),到目前为止都没有。)
感谢。
答案 0 :(得分:2)
echo $!
将获得最后一个命令的PID,所以..
system("process & echo $!");