2013-07-14 5 views
1

У меня проблема, когда я пытаюсь преобразовать адрес в широту и долготу через службу google. Мой адрес: 1456 сок. нет: 10/1 kat: 8 Alsancak. Проблема в том, что когда я пишу этот адрес для URL-адреса, верный результат возвращается, однако, когда я использую код php ниже, я получаю нулевые результаты.PHP google geocoding service возвращает нулевые результаты

Нет проблем с результатом:

http://maps.google.com/maps/api/geocode/json?address=1456%20sok.%20no:%2010/1%20kat:8%20Alsancak&sensor=true

Проблема с PHP:

<?php 
header('Content-Type: text/html; charset=utf-8'); 


getGoogleAddressCoordinates("1456 sok. no: 10/1 kat:8 Alsancak"); 

function getGoogleAddressCoordinates($address) 
{ 
//$address = urlencode($address); 
$address = str_replace(" ", "%20", $address); 

$request = file_get_contents('http://maps.google.com/maps/api/geocode/json?address=' . $address . '&sensor=true'); 
$json = json_decode($request, true); 
print_r ($json); 


} 

>

+0

Что именно вы получите обратно из запроса? (Что содержит '$ request'?), Если это' false', что-то пошло не так с самим вызовом. У вас включена учетная запись об ошибках? –

+1

ссылка не работает для меня .. Я получаю 'ZERO_RESULTS' – bitWorking

ответ

0

Адрес 1456 sok. no: 10/1 kat:8 Alsancak не действует?. Если вы попробуете его на картах Google, вы также получите нулевые результаты.

Попробуйте: 1456 sok. 10/1 Alsancak и раскомментируйте строку $address = urlencode($address); и снимите линию $address = str_replace(" ", "%20", $address);.

URL-адрес должен выглядеть следующим образом:

http://maps.google.com/maps/api/geocode/json?address=1456%20sok.%2010%2F1%20Alsancak&sensor=true

Смежные вопросы