【问题标题】:PID of external process launched in PHPPHP中启动的外部进程的PID
【发布时间】:2014-09-04 09:18:46
【问题描述】:

我需要获取在 PHP 中执行的进程的 PID。接下来是我的问题的概述:

我有一个脚本,它执行两个外部程序(MatLab 中的进程)。第二个程序必须等待第一个程序的输出,如果用户需要,我需要这些进程的 PID 来杀死它们。

首先我使用了 exec() 但我知道如何获取 pid。我也使用过 proc_open() 但我需要第一个调用阻塞脚本(第二个脚本的输入将存储在临时目录中,是一个图像),直到第一个进程结束。

我的环境是在 Windows 中。提前致谢。

【问题讨论】:

  • The second programs must wait for the output of the first one。这是默认行为。

标签: php windows exec proc-open


【解决方案1】:

您可以在 WMIC 的帮助下获取进程的 PID。但请确保只有一个具有该名称的(唯一)进程正在运行:

exec('wmic process where name="program.exe" get ProcessID 2>&1', $output);

$pid = $output[1];

将 program.exe 替换为您的相关进程的名称。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-07
    • 1970-01-01
    • 1970-01-01
    • 2015-06-25
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 2017-08-23
    相关资源
    最近更新 更多