Php 检查可执行文件是否正在运行

问题描述 投票:0回答:3

Php 中是否可以检查可执行文件是否正在运行,

一些伪代码:

if(processExists("notepad.exe")
{
     echo "exists";
}
{
     echo "doesn't exists";
}
php process executable
3个回答
4
投票

您只能检查运行 PHP 的服务器端进程。出于安全考虑,JavaScript(客户端)不允许进行此类访问。


1
投票

我了解您正在使用 cli 或想要检查服务器端进程。

对于特定于 Windows 的解决方案,您可以使用适当的选项执行 shell 命令

tasklist
(请参阅
tasklist /?
)。在基于 Unix 的系统上,您可以使用
ps

要在 PHP 下执行 shell 命令,可以使用 shell_exec()exec()

警告:请勿在这些命令中输入未经清理的用户输入。


0
投票

这是使用 PHP 检查进程是否在 Windows 上运行的简单方法:

exec("tasklist 2>NUL", $task_list);

//print_r($task_list);

foreach ($task_list as $task) {

    if (strpos($task, 'MSWC.exe') !== false) { echo " MSWC.exe is running "; }
  
  }

对于 Linux,您可以使用:

exec("pgrep lighttpd", $pids);
if(empty($pids)) {

    // lighttpd is not running!
}
© www.soinside.com 2019 - 2024. All rights reserved.