Como calcular la distancia entre dos puntos con php?

  • 2 Respuestas
  • 2080 Vistas
*

gerrard

  • **
  • 83
  • +4/-0
  • ISC
    • Ver Perfil
Como calcular la distancia entre dos puntos con php?
« en: Junio 16, 2015, 05:29:46 pm »
Dados los puntos con latitud y longitud conseguidas en Google mas, como puedo sacar la distancia entre dos puntos?

Gracias!



*

Jonathan

  • *****
  • 127
  • +156/-0
  • Don't work hard, work intelligent
    • Ver Perfil
    • Ingeniero en Sistemas Computacionales
Re:Como calcular la distancia entre dos puntos con php?
« Respuesta #1 en: Junio 16, 2015, 05:30:55 pm »
Hola Gerrard,

Puedes utilizar el siguiente Codigo Php

Código: [Seleccionar]
$point1 = array('lat' => 40.770623, 'long' => -73.964367);
$point2 = array('lat' => 40.758224, 'long' => -73.917404);
$distance = getDistanceBetweenPointsNew($point1['lat'], $point1['long'], $point2['lat'], $point2['long']);
foreach ($distance as $unit => $value) {
    echo $unit.': '.number_format($value,4).'<br />';
}

Espero te ayude.
Saludos!

*

Jonathan

  • *****
  • 127
  • +156/-0
  • Don't work hard, work intelligent
    • Ver Perfil
    • Ingeniero en Sistemas Computacionales
Re:Como calcular la distancia entre dos puntos con php?
« Respuesta #2 en: Junio 16, 2015, 11:13:11 pm »
El codigo de la funcion necesaria es el siguiente:

Código: [Seleccionar]
function get_distance_between_points($latitude1, $longitude1, $latitude2, $longitude2) {
    $theta = $longitude1 - $longitude2;
    $miles = (sin(deg2rad($latitude1)) * sin(deg2rad($latitude2))) + (cos(deg2rad($latitude1)) * cos(deg2rad($latitude2)) * cos(deg2rad($theta)));
    $miles = acos($miles);
    $miles = rad2deg($miles);
    $miles = $miles * 60 * 1.1515;
    $feet = $miles * 5280;
    $yards = $feet / 3;
    $kilometers = $miles * 1.609344;
    $meters = $kilometers * 1000;
    return compact('miles','feet','yards','kilometers','meters');
}