Оно возвращает пустой массив
Я пытаюсь получить широту и долготу города с помощью Google Maps API и через PHP (SimpleXML).
Я пытаюсь сделать это так:
$xml = simplexml_load_file("http://maps.googleapis.com/maps/api/geocode/xml?address=Brussels,Belgium&sensor=false");
$lat= $xml->xpath("lat");
print_r($lat);
Но это возвращает пустой массив каждый раз. Я что-то упустил?
Любая помощь очень ценится.
3 ответа:
Для поиска конкретного
latСделайте следующее:<?php $xml = simplexml_load_file("http://maps.googleapis.com/maps/api/geocode/xml?address=Brussels,Belgium&sensor=false"); $lat= $xml->xpath("/GeocodeResponse/result/geometry/location/lat"); print_r($lat); ?>Для всех
latвхождений укажите путь//lat.
Вы должны использовать это вместо:
$xml->xpath("//lat");Таким образом, вы ищете тег lat, который может быть везде в дереве.
Ваш запросXPath неверен. Это должно быть:
$lat= $xml->xpath("//lat");
//указывает xPath искать узлыlatнезависимо от того, где они находятся.