PHP ::如何获取用户的IP地址
很多时候,出于安全原因,我们需要收集访客IP地址以跟踪活动。在PHP中很容易 获得访问者的IP地址。PHP$_SERVER变量提供了一种获取用户IP地址的简便方法 。该 $_SERVER 包含提供PHP服务器和环境相关信息的数组。
获取访问者IP地址的最简单方法是使用PHP中的REMOTE_ADDR。
$_SERVER['REMOTE_ADDR'] –返回查看当前页面的用户的IP地址。
echo 'User IP - '.$_SERVER['REMOTE_ADDR'];
但是有时REMOTE_ADDR不能返回用户的正确IP地址。其背后的原因是使用代理。在这种情况下,使用以下代码 获取PHP中用户的真实IP地址。
function getUserIpAddr(){
if(!empty($_SERVER['HTTP_CLIENT_IP'])){
//ip from share internet
$ip = $_SERVER['HTTP_CLIENT_IP'];
}elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
//ip pass from proxy
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}else{
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
echo 'User Real IP - '.getUserIpAddr();