获取用户IP的方法

从phpwind和discuz中提取出来的.
phpwind:

if($_SERVER[‘HTTP_X_FORWARDED_FOR’]){
$onlineip = $_SERVER[‘HTTP_X_FORWARDED_FOR’];
$c_agentip=1;
} elseif($_SERVER[‘HTTP_CLIENT_IP’]){
$onlineip = $_SERVER[‘HTTP_CLIENT_IP’];
$c_agentip=1;
} else{
$onlineip = $_SERVER[‘REMOTE_ADDR’];
$c_agentip=0;
}

discuz:

if(  getenv(‘HTTP_CLIENT_IP’) && strcasecmp(getenv(‘HTTP_CLIENT_IP’), ‘unknown’)) {
$onlineip = getenv(‘HTTP_CLIENT_IP’);
} elseif(getenv(‘HTTP_X_FORWARDED_FOR’) && strcasecmp(getenv(‘HTTP_X_FORWARDED_FOR’), ‘unknown’)) {
$onlineip = getenv(‘HTTP_X_FORWARDED_FOR’);
} elseif(getenv(‘REMOTE_ADDR’) && strcasecmp(getenv(‘REMOTE_ADDR’), ‘unknown’)) {
$onlineip = getenv(‘REMOTE_ADDR’);
} elseif(isset($_SERVER[‘REMOTE_ADDR’]) && $_SERVER[‘REMOTE_ADDR’] && strcasecmp($_SERVER[‘REMOTE_ADDR’], ‘unknown’)) {
$onlineip = $_SERVER[‘REMOTE_ADDR’];
}

相关文章

发表评论

返回顶部