PHP で IP アドレスに ping を実行し、結果を表示する
PHP では、IP アドレスに ping を実行してそのステータスを確認する方法が複数あります。 。 1 つの方法では、shell_exec() 関数を利用してシステム コマンドを実行します。
提供されたコード スニペット内の pingAddress() 関数は、IP アドレスに ping を送信し、オンラインかオフラインかをエコーすることを目的としています。ただし、コードは現在、実際の IP ステータスに関係なく、誤った「デッド」結果を返します。
潜在的な問題:
代替アプローチ:
これは、上記の問題を修正し、より移植性の高いソリューションを提供するコード:
function pingAddress($ip) { // Ensure IP address is double-quoted $command = "/bin/ping -n 3 \"$ip\""; // Execute the ping command exec($command, $output, $exit_status); // Check exit status if ($exit_status === 0) { $status = "alive"; } else { $status = "dead"; } // Echo the result echo "The IP address, $ip, is $status."; } pingAddress("127.0.0.1");
この改良されたコードは、二重引用符の問題を解決し、終了ステータスを利用して正確な結果を表示します。また、Windows 起動コマンドへの潜在的な依存関係も排除されます。
以上がPHP で IP アドレスに正確に ping を実行し、そのステータスを表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。