利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
author:一佰互联 2019-04-25   click:346

前言

本文中主要介绍了关于利用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"];
 }

}

总结

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