緯度と経度を使ってA地点からB地点までの距離を計算する、とても便利な距離計算機能です。この関数は、マイル、キロメートル、海里の 3 つの単位タイプで距離を返すことができます。
関数 distance($lat1, $lon1, $lat2, $lon2, $unit) {-
- $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 {
- return $miles;
- }
- }
-
- //使用法:
- echo distance(32.9697, -96.80322, 29.46786, -98.53506, "k")." キロメートル
-
コードをコピー 」
|