Heim  >  Artikel  >  php教程  >  获取客户端真实ip地址

获取客户端真实ip地址

WBOY
WBOYOriginal
2016-06-06 19:38:431551Durchsuche

php代码,使用代理服务器也可以获取真实ip,代码是从ThinkPHP中粘贴出来的 无 //获得访客真实ip public function Getip(){ if(!empty($_SERVER["HTTP_CLIENT_IP"])){ $ip = $_SERVER["HTTP_CLIENT_IP"]; } if(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){ //

php代码,使用代理服务器也可以获取真实ip,代码是从ThinkPHP中粘贴出来的
//获得访客真实ip
 public function Getip(){
  if(!empty($_SERVER["HTTP_CLIENT_IP"])){   
     $ip = $_SERVER["HTTP_CLIENT_IP"];
  }
  if(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){ //获取代理ip
   $ips = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
  }
  if($ip){
     $ips = array_unshift($ips,$ip); 
  }
  
  $count = count($ips);
  for($i=0;$i<$count;$i++){   
    if(!preg_match("/^(10|172\.16|192\.168)\./i",$ips[$i])){//排除局域网ip
     $ip = $ips[$i];
     break;    
     }  
  }  
  $tip = $ip ? $ip : $_SERVER['REMOTE_ADDR']; 
  if($tip=="127.0.0.1"){ //获得本地真实IP
     return $this->get_onlineip();   
  }else{
     return $tip; 
  }
 }


 //获得本地真实IP
    public function get_onlineip() 
    {
        $mip = file_get_contents("http://www.ip138.com/ip2city.asp");
        if($mip)
        {
            preg_match("/\[.*\]/",$mip,$sip);
            $p = array("/\[/","/\]/");
            return preg_replace($p,"",$sip[0]);
        }else
        {
            return "获取本地IP失败!";
        }
    }
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn