Извлечение данных XML в php

Я пытаюсь извлечь данные из файла XML ( http://freegeoip.net/xml/google.com ). Вы можете видеть, что содержимое файла выглядит примерно так:

<Response> <Ip>74.125.235.3</Ip> <CountryCode>US</CountryCode> <CountryName>United States</CountryName> <RegionCode>CA</RegionCode> <RegionName>California</RegionName> <City>Mountain View</City> <ZipCode>94043</ZipCode> <Latitude>37.4192</Latitude> <Longitude>-122.0574</Longitude> <MetroCode>807</MetroCode> <AreaCode>650</AreaCode> </Response> 

Я хочу взять информацию, хранящуюся в тегах <latitude> и <longitude> , и хранить их в отдельных переменных. Проблема в том, что я не знаю, как это сделать, и задавался вопросом, может ли кто-нибудь показать мне, как анализировать XML-файлы с помощью php?

 $string_data = "<your xml response>"; $xml = simplexml_load_string($string_data); $latitude = (string) $xml->Latitude; $longitude = (string) $xml->Longitude; echo $latitude.' '.$longitude; 

Это легко, используйте PHP-библиотеку SimpleXML:

 $xml = simplexml_load_file("http://freegeoip.net/xml/google.com"); echo $xml->Ip; // 173.194.38.174 echo $xml->CountryCode; // US echo $xml->ZipCode; // 94043 // etc... 

В руководстве по PHP есть целый раздел по разбору PHP:

Для простоты вы также можете использовать xml_parse_into_struct ()

Вот довольно хороший пример, используя SimpleXML:

http://blog.teamtreehouse.com/how-to-parse-xml-with-php5