首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

php怎么实现这样的效果,大家来讨论下

2012-05-15 
php如何实现这样的效果,大家来讨论下。检测是否能ping通201.168.56.17 。如果可以ping通。。echo (延迟是多少)

php如何实现这样的效果,大家来讨论下。
检测是否能ping通201.168.56.17 。如果可以ping通。。echo (延迟是多少)
如果ping不通 》返回 echo("ping return ;")

就是检测对方主机是否运行。。。

大牛来指点一二。新手来学习一下。大家一起讨论下啦

[解决办法]
搜到一段代码:

PHP code
<?php $host = '192.168.1.1'; //要ping的地址,也可以是IP  $port = '80'; //要ping的端口  $num = 3;  function microtime_float()  {  list($usec, $sec) = explode(" ", microtime());  return ((float)$usec + (float)$sec);  }  function ping($host,$port)  {  $time_start = microtime_float();  $ip = gethostbyname($host);  $fp = @fsockopen($host,$port,&$errno,&$errstr,1);  if(!$fp) return 'replay time out!';  $get = "GET / HTTP/1.1\r\nHost: $host\r\nConnection: Close\r\n\r\n";  @fputs($fp,$get);  @fclose($fp);  $time_end = microtime_float();  $time = $time_end - $time_start;  $time = ceil($time * 1000);  return 'Reply from '.$ip.': time='.$time.'ms<br />';}echo 'Pinging '.$host.' ['.gethostbyname($host).'] with Port:'.$port.' of data:<br /><br />'."\r\n";  for($i = 0;$i < $num;$i++){  echo ping($host,$port);  sleep(1);  ob_flush();  flush();}?>
[解决办法]
用 php 中的 exec() 调用命令来实现 最好。
[解决办法]
$ip = "192.168.1.1"; 
exec( "ping $ip ", $arr); 

print_r($arr); 

热点排行