如何用php实现ping

发布时间:2021-10-15 10:35:55 作者:iii
来源:亿速云 阅读:165

本篇内容介绍了“如何用php实现ping”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

php实现ping功能的方法:1、在php.ini中开通exec函数;2、创建一个PHP示例文件;3、通过“function ping_time($ip) {...}”方法实现ping功能即可。

如何用php实现ping

本文操作环境:windows7系统、PHP7.1版、DELL G3电脑

php怎么实现ping?

php实现ping功能

代码如下:

<?php
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实现ping”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

推荐阅读:
  1. 如何用ping命令来检测网络问题?
  2. 如何用php实现API

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php

上一篇:quantumult的原理是什么

下一篇:怎么解决php post接收不到数据问题

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》