View Single Post
Old 16-03-2008, 08:26   #9 (permalink)
datahound
Spare Parts
 
datahound's Avatar
 
Join Date: Jan 2005
Location: Bracknell Forest
Posts: 4,980
From postcodes you need longitude and latitude. From this you can calc distance between two postcodes.

PHP Code:
<?php

function getDistance($lat1$long1$lat2$long2)
{
//$earth = 6371; //km change accordingly
$earth 3960//miles

//Point 1 cords
$lat1 deg2rad($lat1);
$long1deg2rad($long1);

//Point 2 cords
$lat2 deg2rad($lat2);
$long2deg2rad($long2);

//Haversine Formula
$dlong=$long2-$long1;
$dlat=$lat2-$lat1;

$sinlat=sin($dlat/2);
$sinlong=sin($dlong/2);

$a=($sinlat*$sinlat)+cos($lat1)*cos($lat2)*($sinlong*$sinlong);

$c=2*asin(min(1,sqrt($a)));

$d=round($earth*$c,2);

return 
$d;
}

?>
__________________
  Reply With Quote