Skip to content

Instantly share code, notes, and snippets.

@joostvanveen
Created January 20, 2017 10:53
Show Gist options
  • Save joostvanveen/6c3a92ee18c95f71d680e18cc58d952e to your computer and use it in GitHub Desktop.
Save joostvanveen/6c3a92ee18c95f71d680e18cc58d952e to your computer and use it in GitHub Desktop.
Get a user's IP address, also if you are behind a proxy server
<?php
/**
* Return the remote IP address, also if you are behind a proxy server
*/
function getIp()
{
if (isset($_SERVER)) {
if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) {
return $_SERVER["HTTP_X_FORWARDED_FOR"];
}
if (isset($_SERVER["HTTP_CLIENT_IP"])) {
return $_SERVER["HTTP_CLIENT_IP"];
}
return $_SERVER["REMOTE_ADDR"];
}
if (getenv('HTTP_X_FORWARDED_FOR')) {
return getenv('HTTP_X_FORWARDED_FOR');
}
if (getenv('HTTP_CLIENT_IP')) {
return getenv('HTTP_CLIENT_IP');
}
return getenv('REMOTE_ADDR');
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment