首页 > 开发 > PHP > 正文

php获取客户端ip地址

2024-05-04 21:58:29
字体:大 中 小
来源:转载
供稿:网友

本教程提供几款获取IP地址的代码,各有各的优点,这里获取用户ip 是利用php的全局变量实现的,下面来看看有没有你要找的,php实例代码如下:

  1. //最简单的方法,代码如下: 
  2.  
  3. $ip = $_server["remote_addr"]; 
  4. echo $ip;   
  5.  
  6. //最实用获取用户ip地址代码,代码如下: 
  7.  
  8. function get_real_ip()  {          
  9. $ip=false;          
  10. if(!emptyempty($_server["http_client_ip"]))          
  11. {               
  12. $ip = $_server["http_client_ip"];         
  13.  }          
  14.  if (!emptyempty($_server['http_x_forwarded_for']))         
  15.   {              
  16.    $ips = explode (", ", $_server['http_x_forwarded_for']);              
  17.     if ($ip)              {  
  18.              array_unshift($ips, $ip);  
  19.     $ip = false;              
  20.      }          
  21.       for ($i = 0; $i < count($ips); $i++)    
  22.        {           
  23.         if (!eregi ("^(10|172.16|192.168).", $ips[$i]))  
  24.       {        
  25.        $ip = $ips[$i];   
  26.         break;    
  27.          }   
  28.      }   
  29.      }  
  30.      return ($ip ? $ip : $_server['remote_addr']);   
  31.      }   
  32.      echo get_real_ip();  
  33.  
  34. //获取ip地址与端口号,代码如下: 
  35.  
  36. $ip =$_server["remote_addr"]; 
  37. $port = $_server['remote_port']; 
  38. echo $ip.$port; //开源代码Vevb.com 
  39.  
  40. //有一点意思 
  41.  
  42.  代码如下 复制代码  
  43. if(getenv('http_client_ip')) 
  44. { 
  45.         $onlineip = getenv('http_client_ip'); 
  46. } 
  47. elseif(getenv('http_x_forwarded_for')) 
  48. { 
  49.         $onlineip = getenv('http_x_forwarded_for'); 
  50. } 
  51. elseif(getenv('remote_addr')) 
  52. { 
  53.         $onlineip = getenv('remote_addr'); 
  54. } 
  55. else 
  56. { 
  57.         $onlineip = $http_server_vars['remote_addr']; 
  58. } 
  59. echo $onlineip; 
  60. echo " 
  61. ";  
  62.  
  63. //利用qq接口,代码如下: 
  64.  
  65. function get_ip_place(){ 
  66. $ip=file_get_contents("http://fw.qq.com/ipaddress"); 
  67. $ip=str_replace('"',' ',$ip); 
  68. $ip2=explode("(",$ip); 
  69. $a=substr($ip2[1],0,-2); 
  70. $b=explode(",",$a); 
  71. return $b; 
  72. } 
  73. $ip=get_ip_place(); 
  74. print_r($ip);  

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表