首頁 PHP 函式庫 其它類別庫 計算地圖上兩點間的距離PHP類
計算地圖上兩點間的距離PHP類
<?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地圖

免責聲明

本站所有資源皆由網友貢獻或各大下載網站轉載。請自行檢查軟體的完整性!本站所有資源僅供學習參考。請不要將它們用於商業目的。否則,一切後果都由您負責!如有侵權,請聯絡我們刪除。聯絡方式:admin@php.cn

相關文章

PHP計算地圖上兩點間的距離 PHP計算地圖上兩點間的距離

25 Jul 2016

PHP計算地圖上兩點間的距離

計算地圖上兩點間的距離 計算地圖上兩點間的距離

25 Jul 2016

計算地圖上兩點間的距離

如何計算 Google 地圖 V3 上兩點之間的距離? 如何計算 Google 地圖 V3 上兩點之間的距離?

27 Nov 2024

計算 Google 地圖 V3 中點之間的距離在 Google 地圖 V3 中,可以使用半正弦計算兩個標記之間的距離...

PHP計算地球上兩點之間的距離(範例詳解) PHP計算地球上兩點之間的距離(範例詳解)

03 Apr 2019

給定經度和緯度,求地球上兩點之間的距離。首先我們要先了解問題的解決思路,然後再用PHP程式碼來實現計算。此問題可用半正矢(haversine)公式求解:

如何使用 Google 地圖 V3 計算兩點之間的距離? 如何使用 Google 地圖 V3 計算兩點之間的距離?

29 Nov 2024

使用 Google 地圖 V3 確定兩點之間的距離計算 Google 地圖 V3 中標記之間的距離可以透過以下方式實現...

PHP計算兩個GPS點之間的距離 PHP計算兩個GPS點之間的距離

29 Jul 2016

:本篇文章主要介紹了PHP計算兩個GPS點之間的距離,對於PHP教程有興趣的同學可以參考一下。

See all articles