Heim > Artikel > Backend-Entwicklung > So erhalten Sie die Ping-Zeit in PHP
In diesem Artikel werden hauptsächlich relevante Informationen zum Erhalten von Ping-Zeit in PHP vorgestellt. Ich hoffe, dass dieser Artikel jedem helfen kann, eine solche Funktion zu erreichen.
PHP kann es ausführen Shell-Befehle über die Exec-Funktion, um die Ping-Zeit zu erhalten.
Codebeispiel:
echo 'PHP_INT_MAX : ' . PHP_INT_MAX . "<br><br>"; $ip = '115.29.237.28'; // IP地址 if (PATH_SEPARATOR==':') // linux { echo 'I am linux' . "<br><br>"; exec("ping -c 3 -w 5 $ip", $info); echo 'linux info : ' . "<br>"; print_r($info); $ping_time_line = end($info); echo '<br><br>ping_time_line : ' . $ping_time_line . "<br><br>"; $ping_time = explode("=", $ping_time_line)[1]; $ping_time_min = explode("/", $ping_time)[0] / 1000.0; $ping_time_avg = explode("/", $ping_time)[1] / 1000.0; $ping_time_max = explode("/", $ping_time)[2] / 1000.0; echo $ping_time_min . " " . $ping_time_avg . " " . $ping_time_max . "<br><br>"; } else // windows { echo 'I am windows' . "<br><br>"; exec("ping -c 3 -w 5 $ip", $info); echo 'windows info : ' . "<br>"; print_r($info); $info_time = end($info); echo '<br><br>info_time : ' . $info_time . "<br><br>"; }
Laufergebnis:
PHP_INT_MAX : 9223372036854775807
Ich bin Linux
Linux-Info:
Array ( [0] => PING 115.29.237.28 (115.29.237.28) 56(84) Bytes Daten. [1] => 64 Bytes von 115.29.237.28: icmp_seq=1 ttl=52 Zeit=26,1 ms [2] => 64 Bytes von 115.29.237.28: icmp_seq=2 ttl=52 Zeit=27,5 ms [3] => 64 Bytes von 115.29.237.28: icmp_seq=3 ttl=52 time=25,2 ms [4] => [5] => – 115.29.237.28 Ping-Statistik – [6] => 3 Pakete gesendet, 3 empfangen, 0 % Paket Verlust, Zeit 2002 ms [7] => rtt min/avg/max/mdev = 25,280/26,339/27,590/0,970 ms )
ping_time_line : rtt min/avg/max/mdev = 25,280/26,339/ 27,590/ 0,970 ms
0,02528 0,026339 0,02759
Holen Sie sich die Ping-Zeit und kapseln Sie sie in eine Funktion
function ping_time($ip) { $ping_cmd = "ping -c 3 -w 5 " . $ip; exec($ping_cmd, $info); $ping_time_line = end($info); $ping_time = explode("=", $ping_time_line)[1]; $ping_time_min = explode("/", $ping_time)[0] / 1000.0; $ping_time_avg = explode("/", $ping_time)[1] / 1000.0; $ping_time_max = explode("/", $ping_time)[2] / 1000.0; $result = array(); $result['ping_min'] = $ping_time_min; $result['ping_avg'] = $ping_time_avg; $result['ping_max'] = $ping_time_max; print_r($result); } ping_time('115.29.237.28');
zum Ausführen Ergebnis:
Array ( [ping_min] => 0.025497 [ping_avg] => 0.025947 [ping_max] => 0.026753 )
Das obige ist der detaillierte Inhalt vonSo erhalten Sie die Ping-Zeit in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!