Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann man mit PHP feststellen, ob eine IP-Adresse aktiv oder tot ist?

Wie kann man mit PHP feststellen, ob eine IP-Adresse aktiv oder tot ist?

Barbara Streisand
Freigeben: 2024-11-10 10:21:02
Original
973 Leute haben es durchsucht

How to Determine if an IP Address is Alive or Dead Using PHP?

Anpingen einer IP-Adresse in PHP: Live- oder Dead-Status anzeigen

Um das Problem mit der bereitgestellten pingAddress-Funktion zu beheben, sind mehrere Anpassungen erforderlich :

  1. Verwenden Sie doppelte Anführungszeichen: Die Variable $ip innerhalb der Pingresult-Zuweisung sollte in doppelte Anführungszeichen gesetzt werden, um die IP-Adresse korrekt zu interpretieren:

    $pingresult = shell_exec("start /b ping \"$ip\" -n 1");
    Nach dem Login kopieren
  2. Exit-Status prüfen: Sie können den Exit-Status überprüfen des Ping-Befehls, um festzustellen, ob die IP aktiv oder tot ist. Der folgende Code bietet einen portableren Ansatz:

    function pingAddress($ip) {
        $pingResult = exec("/bin/ping -c 3 $ip", $output, $exitStatus);
        if ($exitStatus === 0) {
            $status = "alive";
        } else {
            $status = "dead";
        }
        echo "The IP address, $ip, is $status";
    }
    Nach dem Login kopieren

In dieser verbesserten Funktion:

  • /bin/ping -c 3 $ip führt den Ping aus Befehl mit 3 Versuchen.
  • exec() erfasst den Ausgabe- und Exit-Status in $output und $exitStatus.
  • Der Exit-Status wird überprüft ($exitStatus === 0 für lebendig, andernfalls tot).
  • Das Ergebnis wird entsprechend wiedergegeben.

Das ist es Beachten Sie, dass dieser Code möglicherweise nicht auf Windows-Systemen funktioniert. Ersetzen Sie unter Linux /bin/ping durch den korrekten Pfad zur ausführbaren Ping-Datei.

Das obige ist der detaillierte Inhalt vonWie kann man mit PHP feststellen, ob eine IP-Adresse aktiv oder tot ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage