当前位置:

php怎么实现ping?

温馨提示:本文共1553个字,读完预计4分钟。

描述:php实现ping功能的方法:
1、在php.ini中开通exec函数;
2、创建一个PHP示例文件;
3、通过“function ping_time($ip) {…}”方法实现ping功能即可。
程序代码如下:
function ping_time($ip) {
  $ping_cmd = "ping -c 1 -w 5 " . $ip;
  exec($ping_cmd, $info);
  if($info == null)
  {
    return json_encode([‘code’=>404,’msg’=>”Ping请求找不到主机”.$ip.”;请检查该名称,然后重试”]);die;
  }

  //判断是否丢包
  $str1 = $info[‘4’];
  $str2 = "1 packets transmitted, 1 received, 0% packet loss";
  if( strpos( $str1 , $str2 ) === false)
  {
     return json_encode([‘code’=>403,’msg’=>”当前网络堵塞,请求无法成功,请稍后重试”]);die;
  }
  $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[‘domain_ip’] = $info[‘0’];
  $result[‘ping_min’] = $ping_time_min;
  $result[‘ping_avg’] = $ping_time_avg;
  $result[‘ping_max’] = $ping_time_max;

  return json_encode([‘code’=>200,’msg’=>”请求成功”,’data’=>$result]);
}

$ip = $_POST[‘ip’]; 

print_r(ping_time($ip));

// 注意去php.ini中开通exec函数。
本文原创发布php中文网https://www.php.cn/php-ask-483033.html ,转载请注明出处,感谢您的尊重!
本文链接:,转发请注明来源!
评论已关闭。