Go Back   CodingForums.com > :: Server side development > PHP

Before you post, read our: Rules & Posting Guidelines

Reply
 
Thread Tools Rate Thread
Enjoy an ad free experience by logging in. Not a member yet? Register.
Old 10-11-2012, 03:57 AM   PM User | #1
sonny
Regular Coder

 
sonny's Avatar
 
Join Date: Apr 2008
Location: United States
Posts: 567
Thanks: 88
Thanked 0 Times in 0 Posts
sonny can only hope to improve
Calculate distance by Lat-Lon

Hi
Can someone please check this, the miles do not seem right when I test it
PHP Code:
    function distance($lat1$lng1$lat2$lng2$miles true){
    
$pi80 M_PI 180;
    
$lat1 *= $pi80;
    
$lng1 *= $pi80;
    
$lat2 *= $pi80;
    
$lng2 *= $pi80;
     
    
$r 6372.797// mean radius of Earth in km
    
$dlat $lat2 $lat1;
    
$dlng $lng2 $lng1;
    
$a sin($dlat 2) * sin($dlat 2) + cos($lat1) * cos($lat2) * sin($dlng 2) * sin($dlng 2);
    
$c atan2(sqrt($a), sqrt($a));
    
$km $r $c;
     
    return (
$miles ? ($km 0.621371192) : $km);
}
$lat1 "39.9289";//Beijing China
$lon1 "116.3883";

$lat2 "47.6026";//Seattle Washington
$lon2 "-122.3284";

$distance distance($lat1$lon1$lat2$lon2);
echo 
"They are ".$distance." miles away from each other 

Last edited by sonny; 10-11-2012 at 05:10 AM..
sonny is offline   Reply With Quote
Old 10-11-2012, 05:41 PM   PM User | #2
sunfighter
Senior Coder

 
Join Date: Jan 2011
Location: Missouri
Posts: 2,383
Thanks: 18
Thanked 350 Times in 349 Posts
sunfighter is on a distinguished road
Your php gives me They are 5400.5810531334 miles away from each other

I used one from http://www.marketingtechblog.com/calculate-distance/ and got
5398.8 Miles.

http://www.freemaptools.com/how-far-...jing_china.htm shows 5399.094 Miles.

Remember: A man with one GPS unit knows exactly where he is. A man with two units is never sure.
sunfighter is offline   Reply With Quote
Old 10-11-2012, 06:25 PM   PM User | #3
sonny
Regular Coder

 
sonny's Avatar
 
Join Date: Apr 2008
Location: United States
Posts: 567
Thanks: 88
Thanked 0 Times in 0 Posts
sonny can only hope to improve
Quote:
Originally Posted by sunfighter View Post
Your php gives me They are 5400.5810531334 miles away from each other

I used one from http://www.marketingtechblog.com/calculate-distance/ and got
5398.8 Miles.

http://www.freemaptools.com/how-far-...jing_china.htm shows 5399.094 Miles.

Remember: A man with one GPS unit knows exactly where he is. A man with two units is never sure.
I was just trying to double check the calculations within the script
Thanks
Sonny
sonny is offline   Reply With Quote
Reply

Bookmarks

Jump To Top of Thread


Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 12:54 PM.


Advertisement
Log in to turn off these ads.