0
我需要或多或少地獲取一張表,報告本地網絡上計算機的IP,以及是否可以找到它。通過PHP獲取網絡上一臺計算機的「狀態」
我已經設置了20臺機器,全部採用靜態IP地址,從192.168.1.111 - 192.168.1.120
我如何檢查,看看機器是否「在線」,並報告其狀態返回到網頁?
目前,我這樣做:
<?php
$nodes = array(
"192.168.1.111",
"192.168.1.112",
"192.168.1.113",
"192.168.1.114", // offline
);
$table = "";
for($i = 0; $i < count($nodes); ++$i) {
exec("ping -c 4 " . $nodes[$i], $output, $result);
if ($result == 0) {
// echo "Ping successful!";
$table += "<tr>";
$table += "<td>Node " . $i . "</td>";
$table += "<td> " . $nodes[$i] . "</td>";
$table += "<td>Ready</td>";
$table += "</tr>";
} else {
// echo "Ping unsuccessful!";
$table += "<tr>";
$table += "<td>Node " . $i . "</td>";
$table += "<td> " . $nodes[$i] . "</td>";
$table += "<td>Offline</td>";
$table += "</tr>";
}
}
echo $table;
?>
我是新來的PHP,所以請原諒我,如果事情是錯的(我敢肯定,這是),但是,這並不輸出數據正確,並且還需要很長時間才能「ping回」本地網站。
上述腳本是在它自己的文件,並附帶<?php include('nodes.php'); ?>
Idealy,應將信息顯示如下所示:
Computer Name IP Address Status
Node 1 192.168.1.111 Online
Node 2 192.168.1.112 Online
Node 3 192.168.1.113 Online
Node 4 192.168.1.114 Offline
竅門!謝謝 :) –