最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

通過PHP實現(xiàn)獲取訪問用戶IP

 更新時間:2020年05月09日 09:32:34   作者:demopy  
這篇文章主要介紹了通過PHP實現(xiàn)獲取訪問用戶IP,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

在php中自帶了一個非常的簡單的獲取IP地址的全局變量,很多初學(xué)都獲取IP都使用它了,但是對于這些我們一般用法是滿足了,但是對于要求高精度這個函數(shù)還是不行的。

這個是最簡單的方法,對于開了透明代理之類的是沒有辦法的,如果內(nèi)網(wǎng)訪問也不能讀取正確的外網(wǎng)IP,不過很省力就是了:

$ip = $_SERVER["REMOTE_ADDR"];

搞定~

上面方法用來取得客戶端的 IP 地址,但如果客戶端是使用代理服務(wù)器來訪問,那取到的就是代理服務(wù)器的 IP 地址,而不是真正的客戶端 IP 地址

要想透過代理服務(wù)器取得客戶端的真實 IP 地址,就要使用 getenv("HTTP_X_FORWARDED_FOR") 來讀取。
但是如果客戶端沒有通過代理服務(wù)器來訪問,那么用getenv("HTTP_X_FORWARDED_FOR") 取到的值將是空的。

else if(getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");

表示如果getenv("HTTP_X_FORWARDED_FOR") 取到的值存在不為空(即客戶端使用代理服務(wù)器的情況下),則變量$ip等于getenv("HTTP_X_FORWARDED_FOR") 取到的真實IP值。

如果上面的else if(getenv("HTTP_X_FORWARDED_FOR"))取得的值為空(即沒有使用代理服務(wù)器),則不會執(zhí)行下面的$ip = getenv("HTTP_X_FORWARDED_FOR");這一行語句。

這種情況下已經(jīng)確認(rèn)客戶端沒有使用代理服務(wù)器,從而通過

else if(getenv("REMOTE_ADDR"))
$ip = getenv("REMOTE_ADDR");

這兩行語句獲得客戶端的IP地址也是真實的IP地址,根據(jù)經(jīng)驗得出

function getIP()
{
  static $realip;
  if (isset($_SERVER)){
    if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
      $realip = $_SERVER["HTTP_X_FORWARDED_FOR"];
    } else if (isset($_SERVER["HTTP_CLIENT_IP"])) {
      $realip = $_SERVER["HTTP_CLIENT_IP"];
    } else {
      $realip = $_SERVER["REMOTE_ADDR"];
    }
  } else {
    if (getenv("HTTP_X_FORWARDED_FOR")){
      $realip = getenv("HTTP_X_FORWARDED_FOR");
    } else if (getenv("HTTP_CLIENT_IP")) {
      $realip = getenv("HTTP_CLIENT_IP");
    } else {
      $realip = getenv("REMOTE_ADDR");
    } 
  }
  return $realip;
}

另外如果我們想獲取更精準(zhǔn)的使用第三方是一個不錯的方法哦

function get_onlineip() {
  $ch = curl_init('http://www.ip138.com/ip2city.asp');
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  $a = curl_exec($ch);
  preg_match('/[(.*)]/', $a, $ip);
  return $ip[1];
 }

這樣不管理代理還是什么都可以判斷IP地址哦

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

略阳县| 祁门县| 观塘区| 阳江市| 若尔盖县| 灯塔市| 全南县| 方正县| 湾仔区| 双流县| 莆田市| 屏南县| 洞口县| 三河市| 乃东县| 安乡县| 苏尼特右旗| 油尖旺区| 通山县| 西盟| 桐柏县| 神池县| 洞口县| 平凉市| 阳春市| 特克斯县| 富蕴县| 仲巴县| 临邑县| 类乌齐县| 诸暨市| 应用必备| 宝丰县| 攀枝花市| 延川县| 合江县| 岑巩县| 塔城市| 太谷县| 淮南市| 辰溪县|