現在、ユーザーが英国の郵便番号を入力できるようにする PHP スクリプトがあります。
彼らが入力した郵便番号から地理位置情報を取得できる方法があるかどうか疑問に思っていました. (GoogleのAPIか何かを通して?)
http://code.google.com/apis/maps/documentation/geocoding/index.htmlを試しましたが、完全な住所が必要ですが、郵便番号しかありません。
助けていただければ幸いです、ありがとう:)ピーター
現在、ユーザーが英国の郵便番号を入力できるようにする PHP スクリプトがあります。
彼らが入力した郵便番号から地理位置情報を取得できる方法があるかどうか疑問に思っていました. (GoogleのAPIか何かを通して?)
http://code.google.com/apis/maps/documentation/geocoding/index.htmlを試しましたが、完全な住所が必要ですが、郵便番号しかありません。
助けていただければ幸いです、ありがとう:)ピーター
現在、ここにリストされている他のオプションに代わる無料の英国政府の選択肢があります. API の詳細と例については、http://postcodes.io/にアクセスしてください。
これは、緯度と経度を含むすべての英国の郵便番号のダウンロード可能なデータベースです。
これは、GoogleMapAPIを使用して英国の郵便番号をジオコーディングするためのステップバイステップのチュートリアルです。
http://www.tomanthony.co.uk/blog/geocoding-uk-postcodes-with-google-map-api/
Ordnance Survey の郵便番号の Open CodePoint データセットは、英国本土のすべての郵便番号のデータセットを提供します
https://www.ordnancesurvey.co.uk/oswebsite/products/code-point-open/index.html
次に、このようなライブラリを使用して、これらを WGS84 Lat/Long に変換できます
http://www.jstott.me.uk/phpcoord/
YahooPlaceFinderAPIをチェックできます
URLの例を次に示しますhttp://where.yahooapis.com/geocode?q=BL12DD&appid=[yourappidhere]
私は過去にこれを使用しましたが、ある程度正確であることがわかりました。
ドキュメント:http ://developer.yahoo.com/geo/placefinder/
ここにコードが来る
<?php
$data = fetchPage("http://where.yahooapis.com/geocode?q=BL12DD&appid=%5Byourappidhere%5D&flags=J");
$yahooData = json_decode($data);
echo '<pre>'.print_r($yahooData, true).'</pre>';
echo '<br />Lat: ' . $yahooData->ResultSet->Results[0]->latitude;
function fetchPage($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
?>
これはすでに回答されていますが、英国の郵便番号(例:ZE1 0AE)、セクター、地区、都市、区の境界を単一または組み合わせて、googlemaps..query の GeoJson を取得できるシンプルな API のリンクを次に示します。