В данной статье рассмотрим одну из распространенных задач в программировании на 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;
}


