PHP 獲取客戶端真實IP地址多種方法小結(jié)
更新時間:2010年05月15日 11:53:03 作者:
PHP 獲取客戶端真實IP地址多種方法小結(jié),需要的朋友可以參考下。
經(jīng)過復雜的判斷與算是的獲取IP地址函數(shù)
function getIP() {
if (getenv('HTTP_CLIENT_IP')) {
$ip = getenv('HTTP_CLIENT_IP');
}
elseif (getenv('HTTP_X_FORWARDED_FOR')) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_X_FORWARDED')) {
$ip = getenv('HTTP_X_FORWARDED');
}
elseif (getenv('HTTP_FORWARDED_FOR')) {
$ip = getenv('HTTP_FORWARDED_FOR');
}
elseif (getenv('HTTP_FORWARDED')) {
$ip = getenv('HTTP_FORWARDED');
}
else {
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
最簡單獲取ip地址代碼一句實例
$reIP=$_SERVER["REMOTE_ADDR"];
echo $reIP;
php獲取ip的算法
if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $onlineip;
可以分出內(nèi)網(wǎng)與外網(wǎng)站ip地址獲取程序
function getip_out(){
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips教程 = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}
echo getip_out();
php獲取ip的算法,用了?號表達式來處理
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
php下獲取客戶端ip地址的函數(shù)
php 獲取客戶端的真實ip
復制代碼 代碼如下:
function getIP() {
if (getenv('HTTP_CLIENT_IP')) {
$ip = getenv('HTTP_CLIENT_IP');
}
elseif (getenv('HTTP_X_FORWARDED_FOR')) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_X_FORWARDED')) {
$ip = getenv('HTTP_X_FORWARDED');
}
elseif (getenv('HTTP_FORWARDED_FOR')) {
$ip = getenv('HTTP_FORWARDED_FOR');
}
elseif (getenv('HTTP_FORWARDED')) {
$ip = getenv('HTTP_FORWARDED');
}
else {
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}
最簡單獲取ip地址代碼一句實例
復制代碼 代碼如下:
$reIP=$_SERVER["REMOTE_ADDR"];
echo $reIP;
php獲取ip的算法
復制代碼 代碼如下:
if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $onlineip;
可以分出內(nèi)網(wǎng)與外網(wǎng)站ip地址獲取程序
復制代碼 代碼如下:
function getip_out(){
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips教程 = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}
echo getip_out();
php獲取ip的算法,用了?號表達式來處理
復制代碼 代碼如下:
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
php下獲取客戶端ip地址的函數(shù)
php 獲取客戶端的真實ip
相關(guān)文章
學習PHP的數(shù)組總結(jié)【經(jīng)驗】
這篇文章主要介紹了學習PHP的數(shù)組總結(jié)【經(jīng)驗】,需要的朋友可以參考下2016-05-05file_get_contents獲取不到網(wǎng)頁內(nèi)容的解決方法
file_get_contents獲取不到網(wǎng)頁內(nèi)容的解決方法,需要的朋友可以參考一下2013-03-03php實現(xiàn)異步數(shù)據(jù)調(diào)用的方法
這篇文章主要介紹了php實現(xiàn)異步數(shù)據(jù)調(diào)用的方法,分享了4種PHP異步執(zhí)行的常用方式,感興趣的小伙伴們可以參考一下2015-12-12奉獻出一個封裝的curl函數(shù) 便于調(diào)用(抓數(shù)據(jù)專用)
這個函數(shù)就是封裝了curl函數(shù)的常用步驟,方便大家抓數(shù)據(jù),小偷程序也是用類似的代碼,需要的朋友可以參考下2013-07-07