zoukankan      html  css  js  c++  java
  • 利用PHP获取访客IP、地区位置、浏览器及来源页面等信息

    这篇文章主要介绍了利用PHP获取访客IP、地区位置、浏览器及来源页面等信息的相关资料,文中给出了详细的示例代码供大家参考学习,对大家具有一定的参考借鉴价值,需要的朋友们下面来一起看看吧。

    前言

    本文中主要介绍了关于利用PHP获取访客IP、地区位置、浏览器及来源页面等信息的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍:

    不多说了,每个方法都注释了,可以直接用:

    示例代码

    <?php
    //这个类似用来获取访客信息的
    //方便统计
    class visitorInfo
    {
     //获取访客ip
     public function getIp()
     {
      $ip=false;
      if(!empty($_SERVER["HTTP_CLIENT_IP"])){
       $ip = $_SERVER["HTTP_CLIENT_IP"];
      }
      if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
       $ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
       if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
       for ($i = 0; $i < count($ips); $i++) {
        if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {
         $ip = $ips[$i];
         break;
        }
       }
      }
      return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
     }
     
     //根据ip获取城市、网络运营商等信息
     public function findCityByIp($ip){
      $data = file_get_contents('http://ip.taobao.com/service/getIpInfo.php?ip='.$ip);
      return json_decode($data,$assoc=true);
     }
     
     //获取用户浏览器类型
     public function getBrowser(){
      $agent=$_SERVER["HTTP_USER_AGENT"];
      if(strpos($agent,'MSIE')!==false || strpos($agent,'rv:11.0')) //ie11判断
       return "ie";
      else if(strpos($agent,'Firefox')!==false)
       return "firefox";
      else if(strpos($agent,'Chrome')!==false)
       return "chrome";
      else if(strpos($agent,'Opera')!==false)
       return 'opera';
      else if((strpos($agent,'Chrome')==false)&&strpos($agent,'Safari')!==false)
       return 'safari';
      else
       return 'unknown';
     }
     
     //获取网站来源
     public function getFromPage(){
      return $_SERVER['HTTP_REFERER'];
     }
     
    }

    总结

    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

    https://www.jb51.net/article/117265.htm

  • 相关阅读:
    POJ Problem 2631 Roads in the North【树的直径】
    POJ Problem 1985 Cow Marathon 【树的直径】
    Light OJ 1049 Farthest Nodes in a Tree【树的直径】
    HDU Problem 4707 Pet【并查集】
    HDU Problem 1325 Is It A Tree?【并查集】
    HDU Problem 5631 Rikka with Graph【并查集】
    HDU Problem 5326 Work 【并查集】
    文件比较软件修改比较文件时间戳方法
    什么是Oracle 数据泵
    文件对比工具文件上传 FTP如何匹配本地文件
  • 原文地址:https://www.cnblogs.com/lxwphp/p/15453820.html
Copyright © 2011-2022 走看看