我正在尝试使用半正弦公式计算从纬度、经度的距离。出于某种原因,这只适用于北半球,我怀疑它是因为abs
. 一旦我删除了绝对值,代码就可以正常工作。所以我只是想知道使用它的目的是什么?
'(3956 * 2 * ASIN(SQRT( POWER(SIN((' . $latitude . ' - abs(r.latitude)) *
pi()/180 / 2),2) + COS(' . $latitude . ' * pi()/180 ) * COS(abs(r.latitude) *
pi()/180) * POWER(SIN((' . $longitude . '-r.longitude) * pi()/180 / 2), 2) )))
< ' . $radius;