Как получить адрес текущего местоположения php
С помощью адреса я могу получить долготу и широту. Но если я не знаю адрес, могу ли я узнать, где я нахожусь или мой адрес, используя php? С помощью этого кода я могу получить широту и долготу CamMob:
<?php
$address = urlencode("#18C, Street 584, Toul Kork, Phnom Penh, Cambodia");
//here is the google api url
$url = "http://maps.googleapis.com/maps/api/geocode/json?address=$address&sensor=false";
//get the content from the api using file_get_contents
$getmap = file_get_contents($url);
//the result is in json format. To decode it use json_decode
$googlemap = json_decode($getmap);
//get the latitute, longitude from the json result by doing a for loop
foreach($googlemap->results as $res){
$address = $res->geometry;
$latlng = $address->location;
$formattedaddress = $res->formatted_address;
echo "Latitude: ". $latlng->lat ."<br />". "Longitude:". $latlng->lng;
}
?>
Но если я не знаю свой адрес, как его получить?
3 ответа
Вы все еще можете узнать его с помощью IP-адреса $_SERVER'http_host'] и использовать этот IP-адрес, чтобы найти текущее местоположение с помощью API-интерфейсов freegeoip.net.
Попробуйте использовать это. Может быть, это поможет.
var_dump ($ _ SERVER)
Если у вас нет входной строки, то есть в вашем случае это адрес, единственный другой метод в браузере - использовать гео-местоположение HTML5. По моему опыту, это все еще не так точно, и это все еще становится и лучше.
Проверьте эту ссылку: http://html5demos.com/geo
Получите местоположение из искателя геолокации HTML5 и поместите его в поле $address.
После этого вы сможете решить свою проблему.
Надеюсь, это помогло.