google maps — геокод PHP gmaps

У меня есть следующий код PHP

 $str = $city . ', ' . $country . ', ' . $addr;
$address = urlencode($str);
$country = urlencode($country);
$json = file_get_contents("https://maps.google.com/maps/api/geocode/json?address=$address&sensor=false&region=$country");
$json = json_decode($json);
$lat = $json->{'results'}[0]->{'geometry'}->{'location'}->{'lat'};
$long = $json->{'results'}[0]->{'geometry'}->{'location'}->{'lng'};
if ($long and $lat) {
$sql = "`lat`='$lat',`lng`='$long',`edit_date`=NOW()";
$up_sql = "UPDATE `user_cards` SET " . $sql . " WHERE `id`='$id'";
}

Этот код успешно работает в 90% случаев, проблема возникает только с определенными адресами.

Например, если $ str = «Болгария, Равда, Emerald Beach Resort» и $ country = «Болгария», file_get_contents возвращает значение NULL, но если я вставлю эту строку в maps.google.com, Google успешно найдет этот адрес. Где ошибка?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]