首頁 >後端開發 >php教程 >如何在 PHP 中從訪客的 IP 位址取得訪客的位置(城市、州、國家)?

如何在 PHP 中從訪客的 IP 位址取得訪客的位置(城市、州、國家)?

Susan Sarandon
Susan Sarandon原創
2024-12-18 15:25:10518瀏覽

How Can I Get a Visitor's Location (City, State, Country) from Their IP Address in PHP?

在PHP 中從IP 位址擷取位置資訊

根據IP 位址定位訪客的城市、州和國家對於客製化至關重要網頁。在 PHP 中,有兩種​​主要方法可以實現此目的:利用本機 GeoIP 資料庫或使用第三方服務。

本地 GeoIP 資料庫

此方法需要下載免費的 GeoIP 資料庫以進行本地查找。然而,它帶來了資料庫管理和更新的複雜性。

第三方服務

透過第三方服務遠端尋找更方便,且設定最少。 ipinfo.io 是一項可靠的服務,它提供全面的信息,包括地理位置、主機名稱、網路所有者和城市級別的詳細資訊。

PHP 實作

在PHP 中使用ipinfo.io 非常簡單:

$ip = $_SERVER['REMOTE_ADDR'];
$details = json_decode(file_get_contents("http://ipinfo.io/{$ip}/json"));
echo $details->city; // -> "Mountain View"

客戶端Script

客戶端Script
$.get("https://ipinfo.io/json", function (response) {
    $("#ip").html("IP: " + response.ip);
    $("#address").html("Location: " + response.city + ", " + response.region);
    $("#details").html(JSON.stringify(response, null, 4));
});
客戶端Script客戶端Script使用jQuery進行客戶端整合:

以上是如何在 PHP 中從訪客的 IP 位址取得訪客的位置(城市、州、國家)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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