首頁  >  文章  >  後端開發  >  如何在 PHP 中可靠地 Ping 一個 IP 位址並顯示結果?

如何在 PHP 中可靠地 Ping 一個 IP 位址並顯示結果?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-07 06:38:02360瀏覽

How to Reliably Ping an IP Address and Display the Result in PHP?

使用PHP 對IP 位址執行Ping 操作並顯示結果

您在嘗試對IP 位址執行Ping 操作並顯示結果

您在嘗試對IP 位址執行Ping 運算並顯示結果時遇到問題使用PHP。讓我們分析程式碼並提供更好的替代方案。
shell_exec("start /b ping \"$ip\" -n 1");

您提供的函數 pingAddress 有一個小錯誤:$ip 變數用單引號引起來,這阻止了 PHP 將其解釋為變數。要修復此問題,您應該使用雙引號:

但是,即使進行此修復,程式碼仍然會失敗,因為它嘗試根據輸出字串確定狀態。更可靠的方法是檢查 ping 命令的退出狀態,因為這表示操作是否成功或失敗。
function pingAddress($ip) {
    $pingResult = exec("/bin/ping -n 3 $ip", $output, $status);

    if ($status == 0) {
        echo "The IP address, $ip, is alive";
    } else {
        echo "The IP address, $ip, is dead";
    }
}

pingAddress("127.0.0.1");

這是程式碼的改進版本:

此程式碼使用 exec() 函數和 /bin/ping 指令來 ping 指定的 IP 位址。它檢查 ping 指令的退出狀態,0 表示成功,非 0 表示失敗。根據退出狀態,顯示相應的訊息。 這種方法更可靠且一致,確保結果準確反映實際的 ping 狀態。

以上是如何在 PHP 中可靠地 Ping 一個 IP 位址並顯示結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn