首页 > 代码学习

PHP获取IP的方法

发布时间:2011-07-12 08:25:44 来源:星知苑 作者:星之宇

有的时候要获取访问者的IP地址,用来判断访问者来自那里,通过IP来显示当地的天气预报等等。
方法一(最简单,我一般经常用这种方法):
<?php
$ip = $_SERVER["REMOTE_ADDR"];
echo $ip;
?>
[break]

方法二:
<?php
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
function GetIP()
{
if(!empty($_SERVER["HTTP_CLIENT_IP"]))
   $ip = $_SERVER["HTTP_CLIENT_IP"];
else if(!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))
   $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
else if(!empty($_SERVER["REMOTE_ADDR"]))
   $ip = $_SERVER["REMOTE_ADDR"];
else
   $ip = "无法获取!";
return $ip;
}
?>


方法四:
<?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
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();
?>


方法六:
<?php
if(getenv('HTTP_CLIENT_IP'))
{
       $ip = getenv('HTTP_CLIENT_IP');
}
elseif(getenv('HTTP_X_FORWARDED_FOR'))
{
       $ip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif(getenv('REMOTE_ADDR'))
{
       $ip = getenv('REMOTE_ADDR');
}
else
{
       $ip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $ip;
?>

相关合集

  • 女生喜欢玩的休闲游戏
女生喜欢玩的休闲游戏

简介:在现在的社会中,很多的女生也是更多的喜欢一些休闲的比较有乐趣消磨时间的游戏,当游戏不再是男生唯一的乐趣的时候,女生玩游戏也是相当有技术也有思想,本站小编认真的去摸排之后发现很多的女生还是喜欢一些有趣的休闲游戏,这里就有针对性来推荐给女生们下载了,休闲游戏好玩又不腻的。