簡體   English   中英

如何判斷我的網絡上的計算機是否已啟用PHP?

[英]How can I tell if a machine on my network is on with PHP?

我想寫一個類似於企業網絡控制台的PHP腳本,但是對於PC和設備的局域網而不是服務器的WAN。

我希望能夠檢查PC,復印機等是否連接到網絡。 我想知道即使它們已關閉,但這是不可能的,因為PC會忽略數據包,除非它是一個喚醒lan數據包,對嗎?

檢查PC是打開還是關閉的最佳方法是什么? 我使用fSocketOpen()來測試服務器,但大多數PC都不是服務器。 他們響應ping但沒有端口打開連接,這意味着PHP fSocketOpen()不起作用,但ping操作。

您可以使用系統命令並捕獲stdout以獲得結果。

只需搜索PHP的popen( http://uk3.php.net/popen )示例。

echo run('ping 192.168.1.5');

function run($command) {
    $command .= ' 2>&1';
    $handle = popen($command, 'r');
    $log = '';

    while (!feof($handle)) {
        $line = fread($handle, 1024);
        $log .= $line;
    }

    pclose($handle);
    return $log;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM