2014-09-27 2 views
1

Я использую API-интерфейс Google для получения маршрутов на основе точек, которые могут быть только городами (а не для адресов, стран или любой POI).получить только названия городов в API Google Directions

Я хотел бы проанализировать название города из ответа, но API возвращает несколько громоздкую строку, которая включает в себя почтовые индексы, состояния, страны и т. Д. Тем не менее, похоже, что этот формат не всегда одинаковый, что делает это несколько опасно, чтобы попытаться получить подстроку. Пример:

link 1Этот вызов возвращает австралийские расположения имен с почтовыми индексами, государством и страной.

"start_address": "Albury NSW 2640, Australia", 
"end_address": "Bendigo VIC 3550, Australia", 

link 2этот вызов возвращает французские места, которые не имеют ни регион, почтовый индекс.

start_address": "Reims, France", 
end_address": "Metz, France", 

Любые мысли?

+0

Примечание: здесь временное решение, которое основывается на анализе строки: '$ end_address = $ GoogleResponseArray [ 'маршруты' ] [0] [ 'ноги'] [$ х] [ 'end_address']; \t \t \t $ end_address = explode (",", $ end_address) [0]; \t \t \t $ end_address = explode ("", $ end_address) [0]; ' – Yann

ответ

1

Единственное известное решение основано на анализе строки:

$end_address = $GoogleResponseArray['routes'][0]['legs'][$x]['end_address']; $end_address = explode(",", $end_address)[0]; $end_address = explode(" ", $end_address)[0];