以下腳本每 3 秒自動 Ping 指定主機 3 次,並即時輸出結果:
<?php
$to_ping = "dtheatre.com";
$count = 3;
$psize = 65;
echo "<font color=\"red\"><blink><b>Pinging</b></blink></font><br>";
echo " Please be patient, this can take a few moments... <br>";
flush();
while (1) {
exec("ping -c $count -s $psize $to_ping", $list);
for ($i = 0; $i < count($list); $i++) {
print $list[$i] . " <br>";
}
flush();
sleep(3);
}
?>
exec() 收集 ping 命令輸出到陣列 $list,逐行輸出。flush() 強制將緩衝區內容發送給瀏覽器,實現「流式」即時顯示效果。sleep(3) 控制輪詢間隔,避免過度佔用資源。while(1) 需謹慎使用,生產環境建議加入中斷條件或改用 AJAX 輪詢。此範例適合簡單的網路狀態監控演示。實際部署時應考慮: