加入收藏 | 设为首页 | 会员中心 | 我要投稿 周口站长网 (https://www.0394zz.cn/)- 数据采集、智能营销、经验、云计算、专属主机!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP获取用户访问IP地址的5种方法

发布时间:2022-07-15 12:23:45 所属栏目:PHP教程 来源:互联网
导读:这篇文章主要为大家详细介绍了PHP获取用户访问IP地址的5种方法,感兴趣的小伙伴们可以参考一下。 本文实例为大家分享了5种PHP获取用户访问IP地址的方法,供大家参考,具体内容如下 ?php //方法1: $ip = $_SERVER[REMOTE_ADDR]; echo $ip; //方法2: $user_I
  这篇文章主要为大家详细介绍了PHP获取用户访问IP地址的5种方法,感兴趣的小伙伴们可以参考一下。
 
  本文实例为大家分享了5种PHP获取用户访问IP地址的方法,供大家参考,具体内容如下
 
  <?php                                                                 //方法1:
  $ip = $_SERVER["REMOTE_ADDR"];
  echo $ip;
     
  //方法2:
  $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
  $user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
  echo $user_IP;
     
  //方法3:
  function getRealIp()
  {
    $ip=false;
    if(!emptyempty($_SERVER["HTTP_CLIENT_IP"])){
      $ip = $_SERVER["HTTP_CLIENT_IP"];
    }
    if (!emptyempty($_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']);
  }
  echo getRealIp();
     
  //方法4:
  if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"])
  {
    $ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
  }
  elseif ($HTTP_SERVER_VARS["HTTP_CLIENT_IP"])
  {
    $ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];
  }
  elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"])
  {
    $ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];
  }
  elseif (getenv("HTTP_X_FORWARDED_FOR"))
  {
    $ip = getenv("HTTP_X_FORWARDED_FOR");
  }
  elseif (getenv("HTTP_CLIENT_IP"))
  {
    $ip = getenv("HTTP_CLIENT_IP");
  }
  elseif (getenv("REMOTE_ADDR"))
  {
    $ip = getenv("REMOTE_ADDR");
  }
  else
  {
    $ip = "Unknown";
  }
  echo $ip ;
     
  //方法5:
  if(getenv('HTTP_CLIENT_IP')) {
    $onlineip = getenv('HTTP_CLIENT_IP');
  } elseif(getenv('HTTP_X_FORWARDED_FOR')) {
    $onlineip = getenv('HTTP_X_FORWARDED_FOR');
  } elseif(getenv('REMOTE_ADDR')) {
    $onlineip = getenv('REMOTE_ADDR');
  } else {
    $onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
  }
  echo $onlineip;

(编辑:周口站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读