Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie berechnet man den Abstand zwischen zwei Postleitzahlen in PHP?

DDD
Freigeben: 2024-11-02 11:44:30
Original
395 Leute haben es durchsucht

How to Calculate the Distance Between Two Zip Codes in PHP?

Berechnung der Entfernung zwischen Postleitzahlen in PHP

Die Berechnung der Entfernung zwischen zwei Postleitzahlen erfordert den Zugriff auf eine Datenbank mit Breiten- und Längengradinformationen für jede Postleitzahl Code. In dieser Frage wird untersucht, wie dieser Abstand mithilfe von Daten aus einer MySQL-Tabelle berechnet wird.

LÖSUNG

Die vorgeschlagene Lösung nutzt eine PHP-Funktion, um den Abstand zwischen zwei gegebenen Punkten zu berechnen Breiten- und Längengrade. Hier ist der 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>
Nach dem Login kopieren

VERWENDUNG

Diese Funktion erfordert zwei Datenpunkte ($point1 und $point2) als Parameter, die jeweils den Breiten- und Längengrad von a enthalten PLZ. Die zurückgegebene Entfernung hat die gleichen Einheiten wie die angegebene Radiuskonstante (in diesem Fall Meilen).

Das obige ist der detaillierte Inhalt vonWie berechnet man den Abstand zwischen zwei Postleitzahlen in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!