Home  >  Article  >  Backend Development  >  How to Ping a Server Port with PHP?

How to Ping a Server Port with PHP?

Linda Hamilton
Linda HamiltonOriginal
2024-10-18 11:03:021093browse

How to Ping a Server Port with PHP?

Pinging a Server Port with PHP

In PHP, you can utilize the fsockopen() function to check whether a server accepts TCP connections on a specified port. Here's how:

$host = '193.33.186.70';
$port = 80;
$waitTimeoutInSeconds = 1;
if($fp = fsockopen($host,$port,$errCode,$errStr,$waitTimeoutInSeconds)){
   // It worked
} else {
   // It didn't work
}
fclose($fp);

This script will determine if the server at the given IP address is accepting HTTP connections on port 80.

Note: This approach is specific to TCP connections. Other protocols like UDP have different characteristics that require more complex pinging mechanisms.

Customized Pinging

If you require more specific pinging capabilities, consider the following script:

function pingDomain($domain){
    $starttime = microtime(true);
    $file      = fsockopen ($domain, 80, $errno, $errstr, 10);
    $stoptime  = microtime(true);
    $status    = 0;

    if (!$file) $status = -1;  // Site is down
    else {
        fclose($file);
        $status = ($stoptime - $starttime) * 1000;
        $status = floor($status);
    }
    return $status;
}

This script provides a ping response in milliseconds, indicating the server's latency. You can use this script to monitor game server availability and response times.

The above is the detailed content of How to Ping a Server Port with PHP?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn