Maison >base de données >tutoriel mysql >Comment calculer la distance entre deux codes postaux en PHP ?
Calcul de la distance entre les codes postaux en PHP
Le calcul de la distance entre deux codes postaux nécessite l'accès à une base de données contenant des informations de latitude et de longitude pour chaque code postal code. Cette question explore comment calculer cette distance à l'aide des données d'une table MySQL.
SOLUTION
La solution suggérée exploite une fonction PHP pour calculer la distance entre deux points en fonction de leur latitudes et longitudes. Voici le code :
<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
Cette fonction nécessite deux points de données ($point1 et $point2) comme paramètres, chacun contenant la latitude et la longitude d'un code postal. La distance renvoyée sera dans les mêmes unités que la constante de rayon fournie (miles dans ce cas).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!