Du använder formeln för den sfäriska Cosinuslagen , inte Haversine-formeln (vilket är något långsammare).
Att räkna ut i MySQL kommer förmodligen att gå mycket snabbare, jag råder dig att läs den här frågan Jag frågade för ett tag sedan, för hastighetsoptimeringar bör du definitivt läsa den utmärkta Geo Proximity Sök med MySQL papper, var särskilt uppmärksam på sidorna 8-14 och 19 .