function ip_first($ips) {
if (($pos = strpos($ips, ',')) != false) {
return substr($ips, 0, $pos);
} else {
return $ips;
}
}
function ip_valid($ips) {
if (isset($ips)) {
$ip = ip_first($ips);
$ipnum = ip2long($ip);
if ($ipnum !== - 1 && $ipnum !== false && (long2ip($ipnum) === $ip)) {
if (($ipnum < 167772160 || $ipnum > 184549375) && ($ipnum < - 1408237568 || $ipnum > - 1407188993) && ($ipnum < - 1062731776 || $ipnum > - 1062666241))
return true;
}
}
return false;
}
function getIP() {
$check = array('HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'HTTP_VIA', 'HTTP_X_COMING_FROM', 'HTTP_COMING_FROM',
'HTTP_CLIENT_IP', 'X-Real-IP');
foreach ($check as $c) {
if (ip_valid($_SERVER[$c])) {
return ip_first($_SERVER[$c]);
}
}
return $_SERVER['REMOTE_ADDR'];
}
getClientIP
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.