3

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

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

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

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

谁能向我解释为什么会这样以及如何从我的 PHP 代码中获取“进程”的 PID?(作为记录,我还尝试过使用代码的变体,包括使用 exec() 和 passthru(),到目前为止,这些都没有奏效。)

谢谢。

4

1 回答 1

2
echo $!

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

system("process & echo $!");
于 2012-05-15T01:34:13.023 回答