温馨提示×

温馨提示×

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

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

利用PHP怎么对访问设备信息进行获取

发布时间:2021-01-22 16:48:39 阅读:296 作者:Leah 栏目:开发技术
PHP开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

这期内容当中小编将会给大家带来有关利用PHP怎么对访问设备信息进行获取,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

<?php
header("Content:Content-type:text/html;charset=utf-8");
//   // 作用取得客户端的ip、地理位置、浏览器、以及访问设备
   class get_equipment_info{
   ////获得访客浏览器类型
   function GetBrowser(){
    if(!empty($_SERVER['HTTP_USER_AGENT']))
    {
     $br $_SERVER['HTTP_USER_AGENT'];
     if (preg_match('/MSIE/i',$br)){
       $br 'MSIE';
     }
     elseif (preg_match('/Firefox/i',$br)){
       $br 'Firefox';
     }elseif (preg_match('/Chrome/i',$br)){
       $br 'Chrome';
     }elseif (preg_match('/Safari/i',$br)){
       $br 'Safari';
     }elseif (preg_match('/Opera/i',$br)){
       $br 'Opera';
     }else {
       $br 'Other';
     }
       return json_encode("浏览器为".$br);
     }else{
       return "获取浏览器信息失败!";}
   }
   ////获得访客浏览器语言
   function GetLang()
   {
      if(!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
        $lang $_SERVER['HTTP_ACCEPT_LANGUAGE'];
        $lang substr($lang,0,5);
        if(preg_match("/zh-cn/i",$lang)){
          $lang "简体中文";
        }elseif(preg_match("/zh/i",$lang)){
          $lang "繁体中文";
        }else{
          $lang "English";
        }
        return json_encode("浏览器语言为".$lang);
      }else{
      return "获取浏览器语言失败!";
      }
   }
   //获取客户端操作系统信息包括win10
  function GetOs(){
    $agent $_SERVER['HTTP_USER_AGENT'];
    $os false;
    if (preg_match('/win/i'$agent) && strpos($agent'95'))
    {
      $os 'Windows 95';
    }
    else if (preg_match('/win 9x/i'$agent) && strpos($agent'4.90'))
    {
      $os 'Windows ME';
    }
    else if (preg_match('/win/i'$agent) && preg_match('/98/i'$agent))
    {
      $os 'Windows 98';
    }
    else if (preg_match('/win/i'$agent) && preg_match('/nt 6.0/i'$agent))
    {
      $os 'Windows Vista';
    }
    else if (preg_match('/win/i'$agent) && preg_match('/nt 6.1/i'$agent))
    {
      $os 'Windows 7';
    }
    else if (preg_match('/win/i'$agent) && preg_match('/nt 6.2/i'$agent))
    {
      $os 'Windows 8';
    }else if(preg_match('/win/i'$agent) && preg_match('/nt 10.0/i'$agent))
    {
      $os 'Windows 10';#添加win10判断
    }else if (preg_match('/win/i'$agent) && preg_match('/nt 5.1/i'$agent))
    {
      $os 'Windows XP';
    }
    else if (preg_match('/win/i'$agent) && preg_match('/nt 5/i'$agent))
    {
      $os 'Windows 2000';
    }
    else if (preg_match('/win/i'$agent) && preg_match('/nt/i'$agent))
    {
      $os 'Windows NT';
    }
    else if (preg_match('/win/i'$agent) && preg_match('/32/i'$agent))
    {
      $os 'Windows 32';
    }
    else if (preg_match('/linux/i'$agent))
    {
      $os 'Linux';
    }
    else if (preg_match('/unix/i'$agent))
    {
      $os 'Unix';
    }
    else if (preg_match('/sun/i'$agent) && preg_match('/os/i'$agent))
    {
      $os 'SunOS';
    }
    else if (preg_match('/ibm/i'$agent) && preg_match('/os/i'$agent))
    {
      $os 'IBM OS/2';
    }
    else if (preg_match('/Mac/i'$agent) && preg_match('/PC/i'$agent))
    {
      $os 'Macintosh';
    }
    else if (preg_match('/PowerPC/i'$agent))
    {
      $os 'PowerPC';
    }
    else if (preg_match('/AIX/i'$agent))
    {
      $os 'AIX';
    }
    else if (preg_match('/HPUX/i'$agent))
    {
      $os 'HPUX';
    }
    else if (preg_match('/NetBSD/i'$agent))
    {
      $os 'NetBSD';
    }
    else if (preg_match('/BSD/i'$agent))
    {
      $os 'BSD';
    }
    else if (preg_match('/OSF1/i'$agent))
    {
      $os 'OSF1';
    }
    else if (preg_match('/IRIX/i'$agent))
    {
      $os 'IRIX';
    }
    else if (preg_match('/FreeBSD/i'$agent))
    {
      $os 'FreeBSD';
    }
    else if (preg_match('/teleport/i'$agent))
    {
      $os 'teleport';
    }
    else if (preg_match('/flashget/i'$agent))
    {
      $os 'flashget';
    }
    else if (preg_match('/webzip/i'$agent))
    {
      $os 'webzip';
    }
    else if (preg_match('/offline/i'$agent))
    {
      $os 'offline';
    }
    else
    {
      $os '未知操作系统';
    }
    return json_encode("系统为".$os);
  }
  //获得访客真实ip
   function Getip()
  {
    if (! empty($_SERVER["HTTP_CLIENT_IP"])) {
      $ip $_SERVER["HTTP_CLIENT_IP"];
    }
    if (! empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { // 获取代理ip
      $ips explode(','$_SERVER['HTTP_X_FORWARDED_FOR']);
    }
    if ($ip) {
      $ips array_unshift($ips$ip);
    }
    $count count($ips);
    for ($i 0$i $count$i ++) {
      if (! preg_match("/^(10|172\.16|192\.168)\./i"$ips[$i])) { // 排除局域网ip
        $ip $ips[$i];
        break;
      }
    }
    $tip empty($_SERVER['REMOTE_ADDR']) ? $ip $_SERVER['REMOTE_ADDR'];
    if ($tip == "127.0.0.1") { // 获得本地真实IP
      return $this->get_onlineip();
    } else {
      return $tip;
    }
  }
   // //根据ip获得访客所在地地名
  function Getaddress($ip '')
  {
    if (empty($ip)) {
      $ip $this->Getip();
    }
    $ipadd file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?ip=" . $ip); // 根据新浪api接口获取
    if ($ipadd) {
      $charset iconv("gbk""utf-8"$ipadd);
      preg_match_all("/[\x{4e00}-\x{9fa5}]+/u"$charset$ipadds);
      return $ipadds// 返回一个二维数组
    } else {
      return "addree is none";
    }
  }
  //获得本地真实IP
  // function get_onlineip()
  // {
  //   $mip = file_get_contents("http://city.ip138.com/city0.asp");
  //   if ($mip) {
  //     preg_match("/\[.*\]/", $mip, $sip);
  //     $p = array(
  //       "/\[/",
  //       "/\]/"
  //     );
  //     return preg_replace($p, "", $sip[0]);
  //   } else {
  //     return "获取本地IP失败!";
  //   }
  // }
}
 // $info = new get_equipment_info();
 //   echo json_decode($info -> GetLang());
 //   echo json_decode($info -> GetOs());
 //   echo json_decode($info -> GetBrowser());
 //   print_r($info -> Getaddress());
 //   echo $info -> Getip();
 //   echo $info -> get_onlineip();
 //   die;
?>

上述就是小编为大家分享的利用PHP怎么对访问设备信息进行获取了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

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

php
AI

开发者交流群×