✅ Nowości, motywy, wtyczki WEB i WordPress. Tutaj dzielimy się wskazówkami i najlepszymi rozwiązaniami dla stron internetowych.

Jak uzyskać geolokalizację z adresu IP w PHP

173

Szukasz sposobu na pobranie geolokalizacji użytkownika z adresu IP w PHP? Korzystając z Geolokalizacji, będziesz wiedzieć, gdzie znajdują się odwiedzający Twoją witrynę. Może być używany do celów grupy docelowej. Na podstawie lokalizacji użytkownika możesz pokazać mu odpowiednią treść.

Wiemy, aby zlokalizować pozycję użytkownika API geolokalizacji HTML5 jest dostępne. Ale ten interfejs API działa na podstawie uprawnień. Wyskakuje użytkownika i pyta o jego uprawnienia, wtedy tylko działa.

Aby przezwyciężyć tę sytuację, dostępna jest jedna usługa, którą jest ipstack. W tym artykule dowiemy się, jak uzyskać geolokalizację z IP w PHP za pomocą usługi ipstack.

Uzyskaj klucz API

Aby rozpocząć, musisz najpierw zarejestrować się na ipstack. ipstack zapewnia różne poziomy usług, od bezpłatnego do poziomu korporacyjnego. Jeśli korzystasz z tej usługi po raz pierwszy, zalecamy najpierw skorzystanie z bezpłatnych planów. W chwili pisania tego artykułu bezpłatna usługa pozwala na 10000 żądań miesięcznie. Oznacza to, że możesz co miesiąc sprawdzać geolokalizację 10000 adresów IP za darmo.

Po zarejestrowaniu się w ipstack otrzymasz klucz dostępu. Ten klucz jest wymagany, gdy damy wywołanie API do ipstack.

Poniżej znajduje się zrzut ekranu pulpitu nawigacyjnego ipstack, na którym możesz skopiować klucz dostępu.

Jak uzyskać geolokalizację z adresu IP w PHP

Uzyskaj geolokalizację z adresu IP w PHP

W tym momencie założyliśmy konto w ipstack i otrzymaliśmy nasz klucz dostępu. Teraz możemy zacząć korzystać z ich usług i uzyskać Geolokalizację z adresu IP. Ponieważ potrzebujemy wywołać API do ipstack, użyjemy PHP cURL do wywołania API. Użytkownik może również użyć Guzzle zamiast cURL.

Powiedzmy, że musimy znaleźć geolokalizację adresu IP „103.47.153.189". Więc napiszemy dla niego kod jak poniżej.

<?php
// set API Access Key
$access_key = 'YOUR_ACCESS_KEY';
 
// set phone number
$ip_address = '103.47.153.189';
 
// Initialize CURL:
$ch = curl_init('http://api.ipstack.com/'. $ip_address .'?access_key='. $access_key);  
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 
// Store the data:
$json = curl_exec($ch);
curl_close($ch);
?>

W zamian otrzymasz odpowiedź w postaci:

{  
   "ip":"103.47.153.189",
   "type":"ipv4",
   "continent_code":"AS",
   "continent_name":"Asia",
   "country_code":"IN",
   "country_name":"India",
   "region_code":"MH",
   "region_name":"Maharashtra",
   "city":"Pune",
   "zip":"411001",
   "latitude":18.5333,
   "longitude":73.8667,
   "location":{  
      "geoname_id":1259229,
      "capital":"New Delhi",
      "languages":[  
         {  
            "code":"hi",
            "name":"Hindi",
            "native":"u0939u093fu0928u094du0926u0940"
         },
         {  
            "code":"en",
            "name":"English",
            "native":"English"
         }
      ],
      "country_flag":"http://assets.ipstack.com/flags/in.svg",
      "country_flag_emoji":"ud83cuddeeud83cuddf3",
      "country_flag_emoji_unicode":"U+1F1EE U+1F1F3",
      "calling_code":"91",
      "is_eu":false
   }
}

Możesz zobaczyć, ile informacji możemy uzyskać, wysyłając adres IP. Prawie wszystkie potrzebne informacje uzyskujemy z IP. Użytkownik może również wysłać wiele adresów IP oddzielonych przecinkami.

Mamy nadzieję, że możesz dowiedzieć się, jak uzyskać geolokalizację z IP w PHP. Chcielibyśmy poznać Twoje przemyślenia w sekcji komentarzy poniżej.

Powiązane artykuły

Źródło nagrywania: artisansweb.net

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów