首頁 >後端開發 >php教程 >php怎麼取得客戶端IP位址? (附代碼)

php怎麼取得客戶端IP位址? (附代碼)

藏色散人
藏色散人原創
2018-11-06 10:18:088685瀏覽

本篇文章主要介紹如何用PHP取得客戶端的IP位址。

首先大家要知道什麼是IP位址?

IP位址: Internet協定位址(IP位址)是分配給連接到使用Internet協定進行通訊的電腦網路的每個裝置的數位標籤。 IP位址有兩個主要功能:主機或網路介面標識和位置尋址。

Internet協定版本4(IPv4)將IP位址定義為32位元數字。但是,由於互聯網的成長和可用IPv4位址的耗盡,使用128位元IP位址的新版,IP(IPv6)於1995年開發,並於1998年12月標準化。 2017年7月,該協議的最終定義已公佈。自2000年代中期以來,IPv6部署一直在進行。

IP位址通常以人們可讀的符號編寫和顯示,例如IPv4中的172.16.254.2,以及IPv6中的2001:db8:0:1234:0:567:8:1。位址的路由前綴的大小以CIDR表示法指定,方法是在位址後面加上有效位數,例如192.168.1.16/24,這相當於歷史上使用的子網路遮罩255.255.255.0。

IP位址空間由網路號碼分配機構(IANA)和五個地區網路註冊機構全球管理。他們在指定的地區負責分配給最終用戶和本地互聯網服務提供者等本地互聯網註冊機構。 IANA已將IPv4位址分配給RIR,每個位址約為1680萬個位址。每個ISP或專用網路管理員為連接到其網路的每個設備分配IP位址。

以下就跟大家詳細介紹PHP取得客戶端IP位址的方法。

<?php
if (!empty($_SERVER[&#39;HTTP_CLIENT_IP&#39;]))   
  {
    $ip_address = $_SERVER[&#39;HTTP_CLIENT_IP&#39;];
  }
elseif (!empty($_SERVER[&#39;HTTP_X_FORWARDED_FOR&#39;]))  
  {
    $ip_address = $_SERVER[&#39;HTTP_X_FORWARDED_FOR&#39;];
  }
else
  {
    $ip_address = $_SERVER[&#39;REMOTE_ADDR&#39;];
  }
echo $ip_address;
?>

那麼這個取得IP位址的流程,我們可以用一張圖來表示:

php怎麼取得客戶端IP位址? (附代碼)

本篇文章就是關於PHP取得客戶端IP位址的方法介紹,希望對需要的朋友有幫助!

以上是php怎麼取得客戶端IP位址? (附代碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn