php获取客户端IP地址的几种方法

发布网友 发布时间:2022-04-06 07:51

我来回答

4个回答

懂视网 时间:2022-04-06 12:12

PHP获取客户端IP

客户端IP: $_SERVER['REMOTE_ADDR']

$_SERVER['REMOTE_ADDR'] 浏览当前页面的用户的 IP 地址。

$_SERVER['REMOTE_HOST'] 浏览当前页面的用户的主机名。DNS 反向解析不依赖于用户的 REMOTE_ADDR。

$_SERVER['REMOTE_PORT'] 用户机器上连接到 Web 服务器所使用的端口号。

详情请查看,超级全局变量的相关手册内容:https://www.php.cn/php/php-superglobals.html

热心网友 时间:2022-04-06 09:20

//php获取ip的算法
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:".$ip ; 
?>

热心网友 时间:2022-04-06 10:38

<?php
$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;
?>

///////////////////////////////////////////////

<?
function get_real_ip(){
 $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'']);
}

echo get_real_ip();
?>

热心网友 时间:2022-04-06 12:13

echo $_SERVER["REMOTE_ADDR"];

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com