質問

この質問にはすでに答えがあります:

PHPを使用してIPアドレスから国、都市、緯度、経度を見つけたいです。このURLを使用しており、XML形式でデータを返しています。

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

データは次のようになります:

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

誰かが結果を解析して取得する方法を提案できますか

役に立ちましたか?

解決

使用する simplexml_load_string().

他のヒント

使用 XMLパーサー PHPに含まれていますか?

私はこれを個人的に使用しています:http://ipinfodb.com/

例は非常に明確で簡潔で、APIは非常に高速です。

幸運を。

PHPでのAPIの使用は、すでにウェブサイトで説明されています。なぜあなたは使うが読まないのですか?

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

使用することをお勧めします xpath これは、属性にアクセスするためのより簡単なスキーマです。たとえば、現在のデータについては、次のことがあります。

$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/>';
    }
}

このコードはあなたを返します ip そしてその country あなたの現在のために xml. 。独自の方法で編集できます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top