Maison >développement back-end >tutoriel php >Comment envoyer un ping à un port de serveur avec PHP : un guide étape par étape
Pinger un port de serveur avec PHP
Comme vous l'avez correctement noté, le script PHP fourni est conçu pour envoyer un ping aux sites Web par leur nom de domaine . Pour l'adapter au ping d'adresses IP et de numéros de port spécifiques, nous devons procéder à quelques ajustements.
La fonction clé dont vous aurez besoin est fsockopen(), qui vous permet d'établir une connexion socket à un serveur distant. En spécifiant l'adresse IP et le numéro de port du serveur, vous pouvez tenter de vous connecter et vérifier si le serveur accepte les connexions sur ce port spécifique.
Voici une version révisée de la fonction ping :
<code class="php">function pingPort($ip, $port, $timeout) { $tB = microtime(true); $fP = fsockopen($ip, $port, $errno, $errstr, $timeout); if (!$fP) { return "down"; } $tA = microtime(true); return round((($tA - $tB) * 1000), 0)." ms"; }</code>
Cette fonction prend trois arguments :
Si le la connexion peut être établie, la fonction renverra le temps aller-retour en millisecondes. Sinon, il retournera "down" pour indiquer que le port n'est pas accessible.
Pour utiliser la fonction, vous pouvez simplement l'appeler ainsi :
<code class="php">$ip = "192.168.1.100"; $port = 80; $timeout = 10; $ping = pingPort($ip, $port, $timeout); if ($ping == "down") { echo "Port $port is not reachable on $ip."; } else { echo "Ping to $ip:$port: $ping ms"; }</code>
Ce script affichera le temps de ping si le port est accessible, ou il affichera un message d'erreur si la tentative de connexion échoue.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!