PHP获取IP的多种有效方法

PHP获取IP的多种有效方法——根据用户的IP地址进行转向
<?php
echo "<br>";
?>

<?php
  
function GetIP()
{
if(!empty($_SERVER["HTTP_CLIENT_IP"]))
   $cip = $_SERVER["HTTP_CLIENT_IP"];
else if(!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))
   $cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
else if(!empty($_SERVER["REMOTE_ADDR"]))
   $cip = $_SERVER["REMOTE_ADDR"];
else
   $cip = "无法获取!";
return $cip;
}
echo "<br>";
?>

方法二:
<?php
echo "<br>";
?>

<?
error_reporting (E_ERROR | E_WARNING | E_PARSE);
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."<br>";                           
?>


方法三(最简单):
<?php
echo "<br>";
?>

<?
$iipp = $_SERVER["REMOTE_ADDR"];
echo $iipp;
echo "<br>";
?>

方法四:
<?php
echo "<br>";
?>

<?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."<br>";
?>

方法五:
<?php
echo "<br>";
?>

<?
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();
echo "<br>";
?>

方法六:
<?php
echo "<br>";
?>

<?
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;
echo "<br>";
?>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值