Bolehkah PHP Ping Gabungan IP dan Port Tertentu?

Mary-Kate Olsen
Lepaskan: 2024-10-18 12:37:35
asal
398 orang telah melayarinya

Can PHP Ping a Specific IP and Port Combination?

Bolehkah PHP Ping IP:Port Combination?

Apabila cuba menentukan ketersediaan pelayan, pendekatan biasa ialah ping Alamat IP dan port tertentu. Walau bagaimanapun, skrip yang direka untuk ping tapak web mungkin tidak mencukupi untuk tujuan ini.

Penyelesaian

Untuk ping gabungan IP:port dalam PHP, seseorang boleh memanfaatkan fsockopen () fungsi. Berikut ialah skrip yang diedit yang boleh mencapai ini:

<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>
Salin selepas log masuk

Dalam skrip ini, selepas mewujudkan sambungan menggunakan fsockopen(), masa ping dikira menggunakan perbezaan antara cap waktu mula dan tamat. Jika sambungan gagal, fungsi mengembalikan "down."

Nota: Seperti yang dinyatakan dalam jawapan yang disediakan, skrip ini hanya berfungsi untuk sambungan TCP. Untuk protokol lain, teknik yang lebih maju mungkin diperlukan, melibatkan penjanaan dan penghuraian paket tersuai.

Atas ialah kandungan terperinci Bolehkah PHP Ping Gabungan IP dan Port Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan