Heim > Backend-Entwicklung > PHP-Tutorial > Kann PHP eine bestimmte Kombination aus IP und Port anpingen?

Kann PHP eine bestimmte Kombination aus IP und Port anpingen?

Mary-Kate Olsen
Freigeben: 2024-10-18 12:37:35
Original
417 Leute haben es durchsucht

Can PHP Ping a Specific IP and Port Combination?

Kann PHP eine IP:Port-Kombination anpingen?

Beim Versuch, die Verfügbarkeit eines Servers zu ermitteln, besteht ein gängiger Ansatz darin, ihn anzupingen IP-Adresse und ein angegebener Port. Ein Skript, das zum Pingen von Websites entwickelt wurde, reicht für diesen Zweck jedoch möglicherweise nicht aus.

Die Lösung

Um eine IP:Port-Kombination in PHP zu pingen, kann man fsockopen nutzen ()-Funktion. Hier ist ein bearbeitetes Skript, das dies erreichen kann:

<code class="php">function ping($host, $port, $timeout) 
{ 
  $start = microtime(true); 
  $socket = fsockopen($host, $port, $errno, $errstr, $timeout); 
  if (!$socket) { return "down"; } 
  $end = microtime(true); 
  fclose($socket);
  return round((($end - $start) * 1000), 0)." ms"; 
}</code>
Nach dem Login kopieren

In diesem Skript wird nach dem Herstellen einer Verbindung mit fsockopen() die Ping-Zeit anhand der Differenz zwischen den Start- und Endzeitstempeln berechnet. Wenn die Verbindung fehlschlägt, gibt die Funktion „down“ zurück.

Hinweis: Wie in der bereitgestellten Antwort erwähnt, funktioniert dieses Skript nur für TCP-Verbindungen. Für andere Protokolle sind möglicherweise fortgeschrittenere Techniken erforderlich, einschließlich benutzerdefinierter Paketgenerierung und -analyse.

Das obige ist der detaillierte Inhalt vonKann PHP eine bestimmte Kombination aus IP und Port anpingen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
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