3

オーストラリアの郵便番号で近接検索を使用する必要があります。http://www.randommouse.com/rms/about/product/FNDRY/docs/tutorial/08/how-to-add-google-maps-to-your-review-site-intro.htmlのようないくつかのリンクを たどる

間違っていなければ、郵便番号を緯度と経度で管理する必要があることがわかりました。しかし、これを実装する方法が見つかりませんでした。誰かがphpでこれを行う方法を提案したり、これについてもっと見ることができるようにいくつかのリンクを提供したりできますか.

前もって感謝します。

編集:

質問を編集しました:

これにGoogle APIを使用して、特定の範囲内の郵便番号を取得できますか? drupal 用のリンクを見つけました。郵便番号を取得するためだけにGoogle APIを使用できますか。たどったリンクはhttp://svendecabooter.be/blog/implementing-location-proximity-search-for-belgium-with-drupal-and-google-mapsです

4

3 に答える 3

3

各郵便番号の経度と緯度を含むデータベースを見つける必要があります。経度と緯度を取得したら、hasine 式 ( http://www.codecodex.com/wiki/Calculate_Distance_Between_Two_Points_on_a_Globe ) を使用してポイント間の距離を計算します。近接検索を行うには、開始点からデータセット内のすべての点までの距離を計算する必要があります。境界ボックスを使用して、その境界ボックス内のポイントを検索することも検討してください。PostGIS のような地理空間データベースには、これらすべてに役立つ機能が組み込まれています。

于 2009-12-02T05:57:58.237 に答える
0

エリア内の長い/緯度(近接)の検索を高速化する方法として、GeoHashを確認することもできます。さまざまな言語の「プラグイン」があります。RubyのGeoHashは非常に使いやすいです。

于 2010-07-13T08:18:01.367 に答える
0

MySQL には、簡単な地理的距離の計算を実行するための機能も用意されており、役立つ場合があります。 https://www.percona.com/blog/2013/10/21/using-the-new-spatial-functions-in-mysql-5-6-for-geo-enabled-applications/

AusPost は最新のリストを無料で提供しなくなったため、最新のオーストラリアの郵便番号データを取得することは問題になる可能性があります。Google マッピング内で操作している場合は、Google にクエリを実行して取得したデータをテーブルに入力しても問題ありません。

内部で使用している郵便番号と緯度/経度を含む郊外のリストがあります。これはhttp://www.computerpros.com.au/data/australian_suburbs.sql からダウンロードできます。

これは、次のテーブル構造を持つ Mysql ダンプです。

+----------+----------------------+------+-----+---------+-------+
| Field    | Type                 | Null | Key | Default | Extra |
+----------+----------------------+------+-----+---------+-------+
| id       | int(10) unsigned     | NO   |     | 0       |       |
| name     | varchar(64)          | NO   |     | NULL    |       |
| postcode | varchar(4)           | NO   |     | NULL    |       |
| state    | smallint(5) unsigned | NO   |     | NULL    |       |
| lat      | float(10,6)          | NO   |     | NULL    |       |
| lng      | float(10,6)          | NO   |     | NULL    |       |
+----------+----------------------+------+-----+---------+-------+
于 2015-10-01T05:00:22.203 に答える