Through complex judgments and sort of getting IP address functions
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;
The simplest way to get an example of an IP address code
$reIP =$_server["REMOTE_ADDR"];
Echo $reIP;
//
PHP tutorials to get IP algorithms
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;
Can be divided into intranet and external Web site IP Address acquisition Program
function Getip_out () {
$ip =false;
if (!empty ($_server["HTTP_CLIENT_IP"])) {
$ip = $_server["Http_client_ip"];
}
if (!empty ($_server[' http_x_forwarded_for ')) {
$ips tutorial = 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 to obtain the IP algorithm, using the? Number expressions to handle
$user _ip = ($_server["Http_via"])? $_server["Http_x_forwarded_for"]: $_server["REMOTE_ADDR"];
$user _ip = ($user _ip)? $user _ip: $_server["REMOTE_ADDR"];