Heim >Backend-Entwicklung >PHP-Tutorial >Wie erhalte ich mithilfe von PHP und APIs von Drittanbietern Stadt, Bundesland und Land aus einer IP-Adresse?

Wie erhalte ich mithilfe von PHP und APIs von Drittanbietern Stadt, Bundesland und Land aus einer IP-Adresse?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-23 06:41:13437Durchsuche

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

So erhalten Sie Standortinformationen von einer IP-Adresse in PHP

Um Ihre Webseite an die einzigartigen Standorte der Besucher anzupassen, benötigen Sie Folgendes eine zuverlässige Möglichkeit, Informationen wie Stadt, Bundesland und Land basierend auf ihren IP-Adressen abzurufen. Hierfür stehen verschiedene Möglichkeiten zur Verfügung.

Ein Ansatz besteht darin, eine kostenlose GeoIP-Datenbank herunterzuladen und die Suche lokal durchzuführen. Alternativ können Sie einen Drittanbieterdienst für Remote-Suchen nutzen, eine praktische Option, die den Einrichtungsaufwand eliminiert, aber die Latenz erhöht.

Ein solcher Drittanbieterdienst ist ipinfo.io. Es bietet verschiedene Informationen zu einer IP-Adresse, einschließlich Hostname, Geolokalisierung, Netzwerkbesitzer und mehr.

Zum Beispiel:

$ 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
}

Hier ist ein Beispiel für die Verwendung von ipinfo.io in PHP:

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

Sie können ipinfo.io auch clientseitig integrieren. Hier ist ein jQuery-Beispiel:

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

Das obige ist der detaillierte Inhalt vonWie erhalte ich mithilfe von PHP und APIs von Drittanbietern Stadt, Bundesland und Land aus einer IP-Adresse?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn