Rumah >pembangunan bahagian belakang >tutorial php >Cara Ping Port Pelayan dengan PHP: Panduan Langkah demi Langkah

Cara Ping Port Pelayan dengan PHP: Panduan Langkah demi Langkah

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-18 10:52:03797semak imbas

How to Ping a Server Port with PHP: A Step-by-Step Guide

Ping Port Pelayan dengan PHP

Seperti yang anda nyatakan dengan betul, skrip PHP yang disediakan direka untuk ping tapak web dengan nama domain mereka . Untuk menyesuaikannya untuk ping alamat IP dan nombor port tertentu, kami perlu membuat beberapa pelarasan.

Fungsi utama yang anda perlukan ialah fsockopen(), yang membolehkan anda mewujudkan sambungan soket ke pelayan jauh. Dengan menyatakan alamat IP pelayan dan nombor port, anda boleh cuba menyambung dan mengesahkan sama ada pelayan menerima sambungan pada port tertentu itu.

Berikut ialah versi semakan fungsi 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>

Fungsi ini memerlukan tiga hujah:

  • $ip: Alamat IP pelayan yang ingin anda ping
  • $port: Nombor port yang anda mahu ping
  • $timeout: Jumlah masa (dalam saat) untuk menunggu respons sebelum menyerah

Jika sambungan boleh diwujudkan, fungsi akan mengembalikan masa perjalanan pergi balik dalam milisaat. Jika tidak, ia akan kembali "bawah" untuk menunjukkan bahawa port tidak boleh dicapai.

Untuk menggunakan fungsi, anda boleh memanggilnya seperti ini:

<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>

Skrip ini akan memaparkan masa ping jika port boleh dicapai, atau ia akan mengeluarkan mesej ralat jika percubaan sambungan gagal.

Atas ialah kandungan terperinci Cara Ping Port Pelayan dengan PHP: Panduan Langkah demi Langkah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn