用 PHP 计算邮政编码之间的距离
计算两个邮政编码之间的距离需要访问包含每个邮政编码的纬度和经度信息的数据库代码。本问题探讨了如何使用 MySQL 表中的数据计算此距离。
解决方案
建议的解决方案利用 PHP 函数来计算给定两个点之间的距离纬度和经度。代码如下:
<code class="php">function calc_distance($point1, $point2) { // Constants $radius = 3958; // Earth's radius (miles) $deg_per_rad = 57.29578; // Number of degrees/radian (for conversion) $distance = ($radius * pi() * sqrt( ($point1['lat'] - $point2['lat']) * ($point1['lat'] - $point2['lat']) + cos($point1['lat'] / $deg_per_rad) // Convert to radians for cos() * cos($point2['lat'] / $deg_per_rad) // Convert to radians for cos() * ($point1['long'] - $point2['long']) * ($point1['long'] - $point2['long']) ) / 180); return $distance; // Returned using the units used for $radius. }</code>
USAGE
此函数需要两个数据点($point1 和 $point2)作为参数,每个数据点包含一个点的纬度和经度邮政编码。返回的距离将采用与提供的半径常数相同的单位(在本例中为英里)。
以上是如何在 PHP 中计算两个邮政编码之间的距离?的详细内容。更多信息请关注PHP中文网其他相关文章!