1

私は、2 つの郵便番号間の距離計算を必要とする Web サイトに取り組んでいます。郵便番号とそれに関連する緯度と経度で構成されるデータベース テーブルがあります。これを利用して、2 地点間の距離を計算します。

しかし、これによって直線距離が得られ、走行距離が得られないという問題があります。どうすればそれを見つけることができますか?

次のコードを使用しています

  $lat1 = $this->deg_to_rad($lat1);
   $lon1 = $this->deg_to_rad($lon1);
   $lat2 = $this->deg_to_rad($lat2);
   $lon2 = $this->deg_to_rad($lon2);

   $delta_lat = $lat2 - $lat1;
   $delta_lon = $lon2 - $lon1;

   $temp = pow(sin($delta_lat/2.0),2) + cos($lat1) * cos($lat2) * pow(sin($delta_lon/2.0),2);

   $distance = 3956 * 2 * atan2(sqrt($temp),sqrt(1-$temp));
4

1 に答える 1

1

どこかで Google マップの GDirection() を静かに呼び出すことができます。ルートだけでなく実際の距離も表示されますが、これは JavaScript の解決策であり、このデータを php に提供する唯一の方法は、受信した距離をキャッチし、AJAX によって php に送信することです。

于 2010-08-25T10:36:07.670 に答える