У цій статті розглянемо одну з поширених задач у програмуванні на PHP. А саме — як у PHP визначити IP користувача.
Якщо я працюю не з фреймворком (наприклад, таким як Yii), то використовую одне з готових рішень у вигляді наступної функції:
function user_ip()
{
if(getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown"))
{
return getenv("HTTP_CLIENT_IP");
}
else if(getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown"))
{
return getenv("HTTP_X_FORWARDED_FOR");
}
else if(getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
{
return getenv("REMOTE_ADDR");
}
else if(!empty($_SERVER['REMOTE_ADDR']) && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
{
return $_SERVER['REMOTE_ADDR'];
}
return NULL;
}

