Come ottenere la geolocalizzazione dall’IP in PHP
Stai cercando un modo per recuperare la geolocalizzazione dell’utente dall’indirizzo IP in PHP? Usando la geolocalizzazione sapresti dove si trovano i visitatori del tuo sito web. Può essere utilizzato per lo scopo del pubblico di destinazione. In base alla posizione dell’utente, puoi mostrargli il contenuto pertinente.
Sappiamo che per localizzare la posizione dell’utente è disponibile l’API di geolocalizzazione HTML5. Ma questa API funziona su base di autorizzazione. Fa apparire un utente e chiede le sue autorizzazioni, quindi funziona solo.
Per superare questa situazione c’è un servizio disponibile che è ipstack. In questo articolo, studiamo come ottenere la geolocalizzazione dall’IP in PHP utilizzando il servizio ipstack.
Ottieni una chiave API
Per iniziare, devi prima registrarti su ipstack. ipstack fornisce diversi livelli di servizi che vanno dal livello gratuito a quello aziendale. Se utilizzi questo servizio per la prima volta, ti consigliamo di scegliere prima i piani gratuiti. Al momento della stesura di questo articolo, il servizio gratuito consente 10.000 richieste al mese. Ciò significa che puoi controllare la geolocalizzazione di 10000 IP gratuitamente ogni mese.
Una volta registrato con ipstack, otterrai la tua chiave di accesso. Questa chiave è necessaria quando daremo una chiamata API a ipstack.
Di seguito è riportato lo screenshot della dashboard di ipstack in cui è possibile copiare la chiave di accesso.
Ottieni la geolocalizzazione dall’IP in PHP
A questo punto, abbiamo creato un account con ipstack e abbiamo ottenuto la nostra chiave di accesso. Ora possiamo iniziare a utilizzare il loro servizio e ottenere la geolocalizzazione dall’indirizzo IP. Poiché abbiamo bisogno di dare una chiamata API a ipstack, useremmo PHP cURL per dare una chiamata API. L’utente può anche utilizzare Guzzle invece di cURL.
Diciamo che dobbiamo trovare la geolocalizzazione di un IP ‘103.47.153.189’. Quindi scriveremo il codice per questo come di seguito.
<?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);
?>
In cambio riceverai una risposta del tipo:
{
"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
}
}
Puoi vedere quante informazioni possiamo ottenere semplicemente inviando un indirizzo IP. Stiamo ottenendo quasi tutte le informazioni necessarie dall’IP. Un utente può anche inviare più IP separati da virgole.
Ci auguriamo che tu possa imparare come ottenere la geolocalizzazione dall’IP in PHP. Ci piacerebbe sentire i tuoi pensieri nella sezione commenti qui sotto.
articoli Correlati
- Trova la geolocalizzazione utilizzando l’indirizzo IP gratuitamente in PHP
- mailboxlayer: un’API gratuita e potente per verificare se l’e-mail è valida (e-mail reale)
- Kickbox: una libreria di verifica e-mail in tempo reale per PHP