Domanda

Questa domanda ha già una risposta qui:

Chi vorrei trovare paese, città, latitudine e longitudine da indirizzo IP utilizzando php. Sto usando questo URL e sta tornando dati in formato XML.

http://www.ipgp.net/api/xml/122.163.6.58

I dati sta arrivando in questo modo:

<IpLookup>
    <Ip>122.163.6.58</Ip>
    <Code>IN</Code>
    <Country>India</Country>
    <Flag>http://www.ipgp.net/flags/in.png</Flag>
    <City>Calcutta</City>
    <Region>West Bengal</Region>
    <Isp></Isp>
    <Lat>22.5697</Lat>
    <Lng>88.3697</Lng>
</IpLookup>

Qualcuno può suggerire come analizzare e ottenere il risultato

È stato utile?

Altri suggerimenti

Utilizza la XML parser incluso in PHP?

Sto usando questo personalmente: http://ipinfodb.com/

Gli esempi sono molto chiara e concisa e l'API è molto veloce.

In bocca al lupo.

L'uso di API in PHP ha già descritto nel loro sito web. Perché si utilizza, ma non leggete?

http://www.ipgp.net/developer-tools/

ti suggerisco di utilizzare xpath questo è più facile schema per l'accesso agli attributi. ad esempio, per i dati correnti Ho il seguente:

$file = 'file.xml';
$xml = new SimpleXMLElement($file, NULL, TRUE);
$ipz = $xml->xpath("/IpLookup/Ip");
$country = $xml->xpath("/IpLookup/Country/");
foreach($ipz as $ip)
{
    foreach($country as $country)
    {
      echo $ip.'<br/>';
      echo $country.'<br/>';
    }
}

questo codice restituirà la ip e la country per il vostro xml corrente. è possibile modificarlo a modo tuo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top