Maison > base de données > tutoriel mysql > le corps du texte

Comment calculer la distance entre deux codes postaux en PHP ?

DDD
Libérer: 2024-11-02 11:44:30
original
395 Les gens l'ont consulté

How to Calculate the Distance Between Two Zip Codes in 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>
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!