PHP で、住所から緯度経度を取る方法

Google Groups に投稿されている記事が役に立つ。 サーバ側から Geocode に SOAP 経由でアクセスして住所を渡すことによって緯度経度が取得できる (米国)。要は、https://sourceforge.net/projects/nusoap/から nusoap.php をダウンロードして(このアーカイブに含まれる nusoap.php だけでよい)、当該のディレクトリに置いてこの SOAP クライアントを利用する。PHP の関数としてはこんな感じか。
<?php

$GEOCODER       
= "https://geocoder.us/service/soap";
$NUSOAP            = "nusoap.php";

include(
$NUSOAP);

$address = 'your address here';

$degree = getDegrees($address);
$lng = $degree['lng'];
$lat = $degree['lat'];

function
getDegrees ($address)
{
    global
$NUSOAP;
    global
$GEOCODER;

   
$soapclient = new soapclient($GEOCODER);
   
$address2check = array('geocode' => $address);
   
$mapData = $soapclient->call('geocode', $address2check, '', '');

    return
$mapData[0];
}

?>
緯度経度が取れれば、後はここから XML を作ってクライアント側は AJAX / Google Maps API を使って表示すればよい。
トラックバック URL: https://perltips.twinkle.cc/trackback/24
Posted on 2005-11-10 by yas |