Heim >Backend-Entwicklung >PHP-Tutorial >Wie erhalte ich mithilfe von PHP und APIs von Drittanbietern Stadt, Bundesland und Land aus einer IP-Adresse?
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!