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

 我来答
打杂伙计
推荐于2016-07-23 · TA获得超过3.1万个赞
知道大有可为答主
回答量:2.2万
采纳率:100%
帮助的人:3729万
展开全部
//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 ; 
?>
Storm代理
2023-07-25 广告
StormProxies是一家提供动态代理服务器服务的企业,旨在帮助用户更好地管理网络访问和安全。以下是一些关于StormProxies的IP动态代理服务的特点:1. 高匿名性:StormProxies的动态代理服务器具有高匿名性,可以有效... 点击进入详情页
本回答由Storm代理提供
正直无阿
2014-11-12 · TA获得超过1万个赞
知道大有可为答主
回答量:1.1万
采纳率:91%
帮助的人:1330万
展开全部
<?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();
?>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
奴性的世界day
2014-11-01 · TA获得超过558个赞
知道小有建树答主
回答量:575
采纳率:0%
帮助的人:385万
展开全部
echo $_SERVER["REMOTE_ADDR"];
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式