在php中执行ping命令,并在网页上获得交互式输出


Execute ping command in php and get interactive output on webpage

我尝试使用php:运行ping命令

<?php
    $response = shell_exec('ping -c 4 '. $_POST['host']);
    echo "<div class='"response'">".$response."</div>";
?>

但我从输入框中发布主机名,然后运行这个php脚本。这是有效的,但只有当命令成功运行时才显示输出,而不是作为进行交互

https://w3dt.net/tools/ping

当我给"www.google.com"时,它会以互动的方式显示结果。您能帮助我将交互式构建为w3dt.net吗?或者建议我使用任何其他方法来实现这一点。

  1. 链接到的工具使用WebSockets来呈现"交互式"输出。

  2. 永远不要将任何未检查的用户输入传递到shell_exec()调用中,因为这将使任何人都可以运行几乎任何shell命令(例如,指定"google.com&&rm-rf/"作为主机名)。