JavaScriptにはかなり新しく、基本的なAPIや関数を探していて、文字列値としてアドレスを入力できます。そのアドレスの緯度。私はDBに一連のアドレスを持っており、それぞれの経度と緯度の値を追加したいと思います。JavaScriptまたはPHPを使用してアドレスから経度と緯度を返す基本的なAPI
おかげ
JavaScriptにはかなり新しく、基本的なAPIや関数を探していて、文字列値としてアドレスを入力できます。そのアドレスの緯度。私はDBに一連のアドレスを持っており、それぞれの経度と緯度の値を追加したいと思います。JavaScriptまたはPHPを使用してアドレスから経度と緯度を返す基本的なAPI
おかげ
は、それはすべての詳細を返すPHP
<?php
$address ="1600+Amphitheatre+Parkway,+Mountain+View,+CA";
$url ="http://maps.googleapis.com/maps/api/geocode/xml?address=".$address."&sensor=false";
$getAddress = simplexml_load_file($url);
print"<pre>";
print_r($getAddress);
?>
を使用した例を下回る検索以下のように緯度/経度を取得する必要があります。
<?php
print"<pre>";
print_r((string)$getAddress->result->geometry->location->lat); echo "<br />";
print_r((string)$getAddress->result->geometry->location->lng);
?>
詳細について下のリンクをクリックしてください:
ありがとうございます完璧に動作します。 – aHunter
これは、ジオコーディングと呼ばれ、Google MapsのAPIで行うことは非常に簡単です:
http://code.google.com/apis/maps/documentation/geocoding/#GeocodingRequests
function GetLatLong($address){
$myKey = 'Get key from google api v2 ';
$URL = "http://maps.google.co.uk/maps/geo?q=" . urlencode($address) . "&output=xml&key=".$myKey;
$xml = simplexml_load_file($URL);
$status = $xml->Response->Status->code;
if ($status=='200')
{ //address geocoded correct, show results
foreach ($xml->Response->Placemark as $node)
{ // loop through the responses
$address = $node->address;
if(strpos($address,'USA') || strpos($address,'usa'))
{
$quality = $node->AddressDetails['Accuracy'];
$coordinates = $node->Point->coordinates;
return (explode(',',$coordinates));
}
}
}
}
このAPIは、唯一の米国と英国のアドレスのために動作します。アドレスは '+'で区切る必要があり、スペースを入れないでください。 このコードは、アメリカ合衆国の座標のみを解析しています。あなたの要求に応じてコードを修正してください
私はあなたが郵便様式のアドレスを意味していると思います。 – Bojangles
[道路上の住所の緯度と経度をプログラムで(法的に)取得する方法](http://stackoverflow.com/questions/158474/how-to-obtain-longitude-and-latitude-for-a-ストリートアドレス - プログラマチック - および - l) – Gordon