服务报价 | 域名主机 | 网络营销 | 软件工具| [加入收藏]
 热线电话: #
当前位置: 主页 > php教程 > php教程 >

Php脚本在线ping ip测试通信时间的代码

时间:2015-01-25 03:48来源:未知 作者:最模板 点击:
php测试ping的代码其实很多,但是最模板同意测试了下,都不正常,从php教程上看到个代码,测试成功,解决了没有服务器权限直接测试通信速度问题。大大方便了排除通信错误问题。
php测试ping的代码其实很多,但是最模板同意测试了下,都不正常,从php教程上看到个代码,测试成功,解决了没有服务器权限直接测试通信速度问题。大大方便了排除通信错误问题。
Php脚本在线ping ip测试通信时间的代码
<?php
$host = 'www.zuimoban.com';
$port = '80';
$num = 3; //Ping次数
//获取时间
function mt_f (){
list($usec,$sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec); //微秒加秒
}
function ping_f($host,$port){
$time_s = mt_f();
$ip = gethostbyname($host);
$fp = @fsockopen($host,$port);
if(!$fp)
return 'reply time out!';
$get = "GET / HTTP/1.1\r\nHost:".$host."\r\nConnect:".$port."Close\r\n";
fputs($fp,$get);
fclose($fp);
$time_e = mt_f();
$time = $time_e - $time_s;
$time = ceil($time * 1000);
return 'reply from '.$ip.':'.$port.' time = '.$time.'ms<br />';
}
echo 'ping to '.$host.' ['.gethostbyname($host).'] with port:'.$port.' of data:<br />';
for($i = 0;$i < $num;$i++){
echo ping_f($host,$port);
//每次运行中间间隔1S
sleep(1);
//刷新输出缓存
ob_flush();
flush();
}
?>
(责任编辑:最模板)
顶一下
(3)
100%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容