Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mendapatkan Bandar, Negeri dan Negara daripada Alamat IP menggunakan PHP dan API Pihak Ketiga?

Bagaimana untuk Mendapatkan Bandar, Negeri dan Negara daripada Alamat IP menggunakan PHP dan API Pihak Ketiga?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-23 06:41:13482semak imbas

How to Get City, State, and Country from an IP Address using PHP and Third-Party APIs?

Cara Mendapatkan Maklumat Lokasi daripada Alamat IP dalam PHP

Untuk menyesuaikan halaman web anda kepada lokasi unik pelawat, anda perlu cara yang boleh dipercayai untuk mendapatkan maklumat seperti bandar, negeri dan negara berdasarkan alamat IP mereka. Terdapat pelbagai pilihan yang tersedia untuk melakukan ini.

Satu pendekatan ialah memuat turun pangkalan data GeoIP percuma dan melakukan carian secara setempat. Sebagai alternatif, anda boleh menggunakan perkhidmatan pihak ketiga untuk carian jauh, pilihan mudah yang menghilangkan kerumitan persediaan tetapi menambah kependaman.

Satu perkhidmatan pihak ketiga sedemikian ialah ipinfo.io. Ia menawarkan pelbagai maklumat tentang alamat IP, termasuk nama hos, geolokasi, pemilik rangkaian dan banyak lagi.

Contohnya:

$ curl ipinfo.io/8.8.8.8
{
  "ip": "8.8.8.8",
  "hostname": "google-public-dns-a.google.com",
  "loc": "37.385999999999996,-122.0838",
  "org": "AS15169 Google Inc.",
  "city": "Mountain View",
  "region": "CA",
  "country": "US",
  "phone": 650
}

Berikut ialah contoh cara menggunakan ipinfo.io dalam PHP:

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

Anda juga boleh menyepadukan ipinfo.io pada bahagian pelanggan. Berikut ialah contoh jQuery:

$.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));
}, "jsonp");

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Bandar, Negeri dan Negara daripada Alamat IP menggunakan PHP dan API Pihak Ketiga?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn