php获取当前ip

jerry thinkphp 2015年11月19日 收藏
php获取当前ip
  1. <?php
  2. $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
  3. $user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
  4. $URL='http://ip.taobao.com/service/getIpInfo.php?ip='.$user_IP;
  5. $fcontents = file_get_contents("$URL");
  6. $contents=json_decode($fcontents);
  7.  ?>
  8.  <html xmlns="http://www.w3.org/1999/xhtml">
  9. <head>
  10. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  11. <title>pr查询</title>
  12. </head>
  13. <body style="text-align:center;margin:200px auto;font-size:25px">     
  14.  
  15.     <?php
  16.      echo '您来自: '.$contents->data->country.$contents->data->area.$contents->data->region.$contents->data->city.'  ip为'.$contents->data->ip;
  17.      ?>
  18.  
  19. </body>
  20. </html>
另外在附一份tp自带的吧:
参考:https://github.com/liu21st/thinkphp/blob/master/ThinkPHP/Library/Org/Net/IpLocation.class.php
  1. /*
  2. *   根据ip地址获取所在城市
  3. */
  4.   protected function checkUserArea(){
  5.        import("ORG.Net.IpLocation");
  6.        $myip=get_client_ip();
  7.        $Ip=new IpLocation("UTFWry.dat");//导入ip库 参考http://thinkphp.cn/extend/270.html  把下载的文件放在Lib\ORG\Net下
  8.        $area=$Ip->getlocation($myip);
  9.     return $area;
  10. }