GoogleMapApiで地名と緯度経度を相互変換する
GoogleMapのAPIで地名と緯度経度を変換するAPIがあります。
今のところこのAPIはデベロッパーキーなどの指定がなくても利用できるようなので、以下のようなPHPのコードで簡単に変換することが出来ます。
地名から緯度経度を得る
第一引数:地名
第二引数:検索結果の地名を何語で得るか(デフォルト日本語にしています)
返り値:GoogleMapGeocodeのAPIのレスポンスを連想配列にしたもの
function getGoogleGeoCode($location, $lang="ja") { $url = "http://maps.google.com/maps/api/geocode/json?sensor=false"; $url.= "&language=".$lang; $url.= "&address=".urlencode($location); $rawdata = file_get_contents($url); return json_decode($rawdata,TRUE); }
緯度経度から地名を得る
第一引数:緯度
第二引数:経度
返り値:GoogleMapGeocodeのAPIのレスポンスを連想配列にしたもの
function getGoogleGeoAddress($lat, $lng) { $url = "http://maps.google.com/maps/api/geocode/json?sensor=false"; $url.= "&latlng=".$lat.",".$lng; $rawdata = file_get_contents($url); return json_decode($rawdata,TRUE); }
file_get_contentsの関数でURLをOpen出来ないようなサーバの場合は、 cURLとかで叩いてください。