PHP 获取客户端真实IP地址多种方法小结 |
本文标签:PHP,真实IP 经过复杂的判断与算是的获取IP地址函数 复制代码 代码如下: function getIP() { if (getenv(HTTP_CLIENT_IP)) { $ip = getenv(HTTP_CLIENT_IP); } elseif (getenv(HTTP_X_FORWARDED_FOR)) { $ip = getenv(HTTP_X_FORWARDED_FOR); } elseif (getenv(HTTP_X_FORWARDED)) { $ip = getenv(HTTP_X_FORWARDED); } elseif (getenv(HTTP_FORWARDED_FOR)) { $ip = getenv(HTTP_FORWARDED_FOR); } elseif (getenv(HTTP_FORWARDED)) { $ip = getenv(HTTP_FORWARDED); } else { $ip = $_SERVER[REMOTE_ADDR]; } return $ip; } 最简单获取ip地址代码一句实例 复制代码 代码如下: $reIP=$_SERVER["REMOTE_ADDR"]; echo $reIP; php获取ip的算法 复制代码 代码如下: 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; 可以分出内网与外网站ip地址获取程序 复制代码 代码如下: function getip_out(){ $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 getip_out(); php获取ip的算法,用了?号表达式来处理 复制代码 代码如下: $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"]; $user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"]; php下获取客户端ip地址的函数 php 获取客户端的真实ip |