<?php
function rad($x) { return $x * M_PI / 180.0;}
function distHaversine($lat1, $lon1, $lat2, $lon2)
{
$R = 6372.08; // earth's mean radius in km
$dLat = rad($lat2 - $lat1);
$dLong = rad($lon2 - $lon1);
$a = sin($dLat / 2.0) * sin($dLat / 2.0) + cos(rad
($lat1)) * cos(rad
($lat2)) * sin($dLong / 2.0) * sin($dLong / 2.0); return $R * $c;
}
var_dump(distHaversine
(1.57454123333,103.6200516333,1.57483825,103.619484475));
PD9waHAKZnVuY3Rpb24gcmFkKCR4KSB7IHJldHVybiAkeCAqIE1fUEkgLyAxODAuMDt9CgpmdW5jdGlvbiBkaXN0SGF2ZXJzaW5lKCRsYXQxLCAkbG9uMSwgJGxhdDIsICRsb24yKSAKewogICRSID0gNjM3Mi4wODsgLy8gZWFydGgncyBtZWFuIHJhZGl1cyBpbiBrbQogICRkTGF0ICA9IHJhZCgkbGF0MiAtICRsYXQxKTsKICAkZExvbmcgPSByYWQoJGxvbjIgLSAkbG9uMSk7CgogICRhID0gc2luKCRkTGF0IC8gMi4wKSAqIHNpbigkZExhdCAvIDIuMCkgKwogICAgICAgICAgY29zKHJhZCgkbGF0MSkpICogY29zKHJhZCgkbGF0MikpICogc2luKCRkTG9uZyAvIDIuMCkgKiBzaW4oJGRMb25nIC8gMi4wKTsKICAkYyA9IDIuMCAqIGF0YW4yKHNxcnQoJGEpLCBzcXJ0KDEuMCAtICRhKSk7CiAgcmV0dXJuICRSICogJGM7Cn0KCnZhcl9kdW1wKGRpc3RIYXZlcnNpbmUoMS41NzQ1NDEyMzMzMywxMDMuNjIwMDUxNjMzMywxLjU3NDgzODI1LDEwMy42MTk0ODQ0NzUpKTs=