PHP get ip function

by Ranganathan 2012-08-28 22:44:59

Are you using $_SERVER['REMOTE_ADDR'] to find the the client's IP address in PHP? Well dude, you might be amazed to know that it may not return the true IP address of the client at all time. If your client is connected to the Internet through Proxy Server then $_SERVER['REMOTE_ADDR'] in PHP just returns the the IP address of the proxy server not of the client's machine. So here is a simple function in PHP to find the real IP address of the client's machine. There are extra Server variable which might be available to determine the exact IP address of the client's machine in PHP, they are HTTP_CLIENT_IP and HTTP_X_FORWARDED_FOR.

function getRealIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy
{
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
821
like
0
dislike
0
mail
flag

You must LOGIN to add comments