function fun_get_ip(){
static $ip = null;
if($ip)
return $ip; // 不需要计算第二次.
$ip=false;
if($_SERVER['HTTP_VIA']){
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}else if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip){
array_unshift($ips, $ip); $ip = false;
}
$ipss = count($ips);
for ($i = 0; $i < $ipss; $i++){
if (!preg_match('/^(10|172\.16|192\.168)\./', $ips[$i])){
$ip = $ips[$i];
break;
}
}
}
}else{
$ip = $_SERVER['REMOTE_ADDR'];
}
# 更兼容的获取.
if(!$ip)
if(!$ip = getenv("REMOTE_ADDR"))
if (!$ip = getenv("HTTP_CLIENT_IP"))
if(!$ip = getenv("HTTP_X_FORWARDED_FOR"))
$ip = false;
return $ip;
}
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号