<?php class GeoHelper { /** * @param int $lat1 * @param int $lon1 * @param int $lat2 * @param int $lon2 * @param string $unit * @return */ public static function distance($lat1, $lon1, $lat2, $lon2, $unit = "K") { $theta = $lon1 - $lon2; $dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2)) + cos(deg2rad($lat1)) * cos(deg2rad ($lat2)) * cos(deg2rad($theta)); $dist = acos($dist); $dist = rad2deg($dist); $miles = $dist * 60 * 1.1515; $unit = strtoupper($unit); if ($unit == "K") { return ($miles * 1.609344); } else if ($unit == "N") { return ($miles * 0.8684); } else { //mi return $miles; } } /** * * @param string $address * @param string $apikey * @return array [1]:lat [0]:lng */ public static function getLatLng($address, $apikey) { $find = array("\n", "\r", " "); $replace = array("", "", "+"); $address = str_replace($find, $replace, $address); $url = 'http://maps.google.com/maps/geo?q=' . $address . '&key=' . $apikey . '&sensor=false&output=xml&oe=utf8'; $response = self::xml2array($url); $coordinates = $response['kml']['Response']['Placemark']['Point']['coordinates']; if (!empty($coordinates)) { $point_array = split(",", $coordinates); return $point_array; } } }
Google マップを使用して、地図上の 2 點(diǎn)間の距離を計算します
このサイトのすべてのリソースはネチズンによって提供されたもの、または主要なダウンロード サイトによって転載されたものです。ソフトウェアの整合性をご自身で確認(rèn)してください。このサイトのすべてのリソースは學(xué)習(xí)の參考のみを目的としています。商業(yè)目的で使用しないでください。そうでない場合は、すべての結(jié)果に対して責(zé)任を負(fù)うことになります。侵害がある場合は、削除するためにご連絡(luò)ください。連絡(luò)先情報: admin@php.cn
関連記事

08 Sep 2025
ジオディストは、地球上の2つのポイント間の直線距離を計算するために使用される関數(shù)です。 STATAで使用する前に、SSCINSTALLGEODISTをインストールする必要があります。 1.それを使用する場合、geodistlat1lon1lat2lon2、gen(distant_km)など、2つのポイントの緯度と経度のパラメーターを指定して、キロメートルの単位距離を生成する必要があります。 2.マイル?yún)g位が必要な場合は、マイルオプションを追加します。 3.緯度と経度が小數(shù)體の形式であることを確認(rèn)することに注意してください。範(fàn)囲は合法であり、変數(shù)の順序が正しいことを確認(rèn)してください。 4.バッチ計算中、參照ポイントをすべての行にコピーしてコマンドを?qū)g行できます。この方法は、店舗の場所の選択、交通分析、その他のシナリオに適しています。

29 Nov 2024
Google マップ V3 を使用して 2 點(diǎn)間の距離を決定するGoogle マップ V3 でマーカー間の距離を計算するには、次の手順を?qū)g行します。

28 Nov 2024
Google マップ V3 でマーカー間の距離を計算する方法地図上の 2 點(diǎn)間の距離を計算することは一般的なタスクであり、Google マップ...

30 Nov 2024
Google マップ V3 の 2 つのマーカー間の距離を計算するGoogle マップ V3 のマーカーで示される 2 つの點(diǎn)間の距離を決定するのは...

27 May 2025
ロケーションベースのデータ分析の領(lǐng)域では、Excelの都市間の距離を計算することは、機(jī)能が組み込まれていないために少し困難になる可能性があります。ただし、このタスクを達(dá)成するためのいくつかの効果的な方法があります。このガイドで説明します

30 Jul 2025
地球上の2つのポイント間の距離を計算するには、地球がほぼ球體であるため、平面ジオメトリの代わりにハーシン式を使用します。 1.ハーバーニン式は、緯度と経度(ラジアンに変換)だけで大きな円の距離を計算します。式は次のとおりです。A=sin2(Δφ/2)cosφ??cosφ??sin2(Δλ/2)、c =2?atan2(√a、√(1 -a))、d =r?c、rは地球の平均半徑(6371キロメートル)です。 2。PHPで実裝されたら、最初に緯度と経度を小數(shù)體システムからラジアンに変換し、差を計算し、式を置き換えて距離を見つけ、パラメーターを介してキロメートルまたはマイルの単位を選択します。 3.例を使用して、ニューヨークとロサンゼルスの間の距離が約3944キロメートルまたは2451マイルであることを示します。 4。メモ


ホットツール Tags

ホットツール

50 個の優(yōu)れた古典的な PHP アルゴリズムのコレクション
古典的な PHP アルゴリズム、優(yōu)れたアイデアを?qū)Wび、思考を広げます

依存関係注入コンテナー用の PHP ライブラリ
依存関係注入コンテナー用の PHP ライブラリ

畫像を最適化するための小さな PHP ライブラリ
畫像を最適化するための小さな PHP ライブラリ
