/* * $lat1, $lon1: 第一个点的经纬度 * $lat2, $lon2: 第二个点的经纬度 * $radius: 可选,默认为地球的半径 */ function sphere_distance($lat1, $lon1, $lat2, $lon2, $radius=6378.135) { $rad = doubleval(M_PI/180.0); $lat1 = doubleval($lat1) * $rad; $lon1 = doubleval($lon1) * $rad; $lat2 = doubleval($lat2) * $rad; $lon2 = doubleval($lon2) * $rad; $theta = $lon2 - $lon1; $dist = acos(sin($lat1) * sin($lat2) + cos($lat1) * cos($lat2) * cos($theta)); if($dist < 0) { $dist += M_PI; } // 单位为 千米 return $dist = $dist * $radius; } // 使用示例 $dist = sphere_distance(40.858704, -73.928532, 37.758434, -122.435126); $formatted = sprintf("%2.f", $dist * 0.612); print $formatted;
sprintf() 函数把格式化的字符串写入变量中。
<?php $number = 2; $str = "Shanghai"; $txt = sprintf("There are %u million cars in %s.",$number,$str); echo $txt; ?>