xandeadx.ru Блог музицирующего веб-девелопера

PHP → Пример получения гео-координат по адресу с помощью API Яндекс.Карт

Опубликовано в

Код выводит на экран координаты адреса Москва, ул. Льва Толстого, 16, которые в дальнейшем можно использовать для отметки на карте:

$params = array(
    'geocode' => 'Москва, ул. Льва Толстого, 16', // адрес
    'format'  => 'json',                          // формат ответа
    'results' => 1,                               // количество выводимых результатов
    'key'     => '...',                           // ваш api key
);
$response = json_decode(file_get_contents('http://geocode-maps.yandex.ru/1.x/?' . http_build_query($params, '', '&')));
 
if ($response->response->GeoObjectCollection->metaDataProperty->GeocoderResponseMetaData->found > 0)
{
    echo $response->response->GeoObjectCollection->featureMember[0]->GeoObject->Point->pos;
}
else
{
    echo 'Ничего не найдено';
}

Получение гео-координат с помощью Javascript
Официальная справка по геокодированию
Пример получение координат для списка адресов
Форма получения ключа для доступа к API

Похожие записи

Комментарии RSS

Спасибо за материал... Как раз вчера озадачились этим вопросом, а тут готовый пример ))).

А под Drupal 7 есть модуль, выводящий месторасположение, который работает с Яндекс картами?

Товарищи, спасибо за код, отлично работает, но только на денвере, а на хосте не хочет: вот на этой строке $response = json_decode(file_get_contents('http://geocode-maps.yandex.ru/1.x/?' . http_build_query($params))); завершает выполнение всего что ниже :( в чем беда? может на хосте надо модуль какой включить?
Заранее спасибо!

читайте логи

xandeadx, спасибо разобрался уже, json в php был отключен

Реально спасибо за код :)

Вопрос: если бы потребовалась задача сделать организации и выборку улиц, домов, тоже можно было бы яндекс использовать, если да, то как хранить адреса: в виде стринга : улица, дом, или id - ссылкой на я-карты?
Что посоветуте?

то и другое наверное

Не забывайте сохранять полученные данные, потому что число запросов к сервису в сутки ограничено довольно скромной цифрой в 25 000 запросов.

А определение города по IP можно сделать при помоще этой штуки?

нет

Оставить комментарий

Содержимое этого поля является приватным и не будет отображаться публично. Если у вас есть аккаунт в Gravatar, привязанный к этому e-mail адресу, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <i> <b> <strong> <code> <ul> <ol> <li> <blockquote> <em> <s>
  • Строки и параграфы переносятся автоматически.
  • Подсветка кода осуществляется с помощью тегов: <code>, <css>, <html>, <ini>, <javascript>, <sql>, <php>. Поддерживаемые стили выделения кода: <foo>, [foo].

Подробнее о форматировании