哈弗正因公式与php
2022-08-30 17:28:34
我想在php中使用此公式。我有一个数据库,其中保存了一些纬度和经度的值。
我想在输入一定纬度和经度值的情况下,找到从该点到数据库中的每个点的所有距离(以公里为单位)。为此,我在googlemaps api上使用了公式:
( 6371 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) )
当然,在php中使用它,我用.值 37,-122 是我的输入值,lat,lng 是我在数据库中的值。deg2rad
下面是我的代码。问题是有问题,但我不明白是什么。距离的值当然是错误的。
//values of latitude and longitute in input (Rome - eur, IT)
$center_lat = "41.8350";
$center_lng = "12.470";
//connection to database. it works
(..)
//to take each value in the database:
$query = "SELECT * FROM Dati";
$result = mysql_query($query);
while ($row = @mysql_fetch_assoc($result)){
$lat=$row['Lat']);
$lng=$row['Lng']);
$distance =( 6371 * acos((cos(deg2rad($center_lat)) ) * (cos(deg2rad($lat))) * (cos(deg2rad($lng) - deg2rad($center_lng)) )+ ((sin(deg2rad($center_lat))) * (sin(deg2rad($lat))))) );
}
例如,对于值:$lat= 41.9133741000 $lng= 12.5203944000
我有距离=“4826.9341106926”的输出