


<?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; } } }
Calculez la distance entre deux points sur la carte, à l'aide de Google Maps
Toutes les ressources de ce site proviennent d'internautes ou sont réimprimées par les principaux sites de téléchargement. Veuillez vérifier vous-même l'intégrité du logiciel ! Toutes les ressources de ce site sont uniquement à titre de référence d'apprentissage. Merci de ne pas les utiliser à des fins commerciales. Sinon, vous serez responsable de toutes les conséquences ! En cas d'infraction, veuillez nous contacter pour la supprimer. Coordonnées : admin@php.cn
Article connexe

27 Nov 2024
Calcul de la distance entre les points dans Google Maps V3Dans Google Maps V3, la distance entre deux marqueurs peut être calculée à l'aide du Haversine...

31 Oct 2024
Latitude et longitude : calculer la distance entre deux pointsLe calcul de la distance entre deux points du globe nécessite la connaissance de...

01 Nov 2024
Présentation des calculs de distance basés sur la latitude et la longitudeCalcul de la distance entre deux points de la surface de la Terre à l'aide de leur...

01 Dec 2024
Détermination de la distance entre les points dans Google Maps V3Le calcul de la distance entre deux marqueurs dans Google Maps V3 nécessite une approche mise à jour...

31 Oct 2024
Calcul de la distance entre deux points à l'aide de la latitude et de la longitudeDéterminer la distance entre deux points sur une carte est une tâche courante dans...

29 Oct 2024
Calcul de la distance à partir de deux points : latitude et longitudeDéterminer la distance entre les points en utilisant leur latitude et leur longitude est un...


Outils chauds Tags

Hot Tools

Bibliothèque PHP pour les conteneurs d'injection de dépendances
Bibliothèque PHP pour les conteneurs d'injection de dépendances

Une collection de 50 excellents algorithmes PHP classiques
Algorithme PHP classique, apprenez d'excellentes idées et élargissez votre réflexion

Petite bibliothèque PHP pour optimiser les images
Petite bibliothèque PHP pour optimiser les images
