PHP获取IP的多种有效方法
2012-07-05 09:48
567 查看
<?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>"; ?>
相关文章推荐
- PHP获取IP地址的多种有效方法
- php获取本地ip的多种方法
- PHP中获取来访者IP的方法
- PHP获取IP的多种方式解析
- PHP基于新浪IP库获取IP详细地址的方法
- Node.js和PHP根据ip获取地理位置的方法
- php获取ip及网址的方法
- PHP全面获取url地址栏参数多种方法
- PHP获取当前月份,多种显示方法
- php获取客户端IP及URL的方法示例
- PHP获取时间日期的多种方法
- php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
- Nginx反向代理导致PHP获取不到正确的HTTP_HOST,SERVER_NAME,客户端IP的解决方法
- PHP中使用Node.js根据ip获取地理位置的方法代码
- PHP获取用户IP地址的方法
- 【php】利用新浪api接口与php获取远程数据的方法,获取IP地址,并获取相应的IP归属地
- php实现登录tplink WR882N获取IP和重启的方法
- php获取用户IP的方法
- php通过ip获取地理位置的方法