Esta útil función calcula en kilómetros la distancia entre dos puntos dados en latitud y longitud. Para los que deseeis el cálculo en millas no teneis mas que convertir al dato manteniendo la proporción de 1.609 metros igual a una milla terrestre. Muy útil para implementar en mapas de google.
Trasteando esta función que me resulta muy interesante he visto otros códigos similares en la red.
En ellos hay dos opciones
$earth = 6371; //km
$earth = 3960; //millas
En el código que has puesto parece que se utiliza el valor de millas y luego el resultado se dice que son km. Creo que quizá haya un error en eso
Un saludo y muchas gracias
Si te fijas= 3960*1.609=6371
Saludos