没有获得完整的地址的正确纬度和经度


Not getting correct latitude & longitude with full address

$fulladdress = 'South Bay Hospital 4016 Sun City Center Blvd Sun City Center Florida 33573';
$address = str_replace(' ','+',$fulladdress);
$url = "http://maps.googleapis.com/maps/api/geocode/json?address='".@urlencode($address)."'&sensor=false";
$result_string = @file_get_contents($url);<br>
$result = @json_decode($result_string, true);<br>
$result1[]=@$result['results'][0];<br>
$result2[]=$result1[0]['geometry'];<br>
$result3[]=$result2[0]['location'];<br>
return $result3[0]; 

我正在使用这个谷歌地理编码API来获取纬度和经度。我已经传递了完整的地址"南湾医院4016太阳城中心大道太阳城中心佛罗里达33573",但它没有给出完整的地址纬度和经度。当我检查print_r($result(时。所以它会自动删除"南湾医院",并为"4016 Sun City Center Blvd Sun City Center Florida 33573"提供纬度和经度,这就是为什么谷歌地图标记没有出现在正确的位置。

检查这个:

// We get the JSON results from this request
$geo = file_get_contents('http://maps.googleapis.com/maps/api/geocode/json?address='.urlencode($address).'&sensor=false');
// We convert the JSON to an array
$geo = json_decode($geo, true);
// If everything is cool
if ($geo['status'] = 'OK') {
  // We set our values
  $latitude = $geo['results'][0]['geometry']['location']['lat'];
  $longitude =  $geo['results'][0]['geometry']['location']['lng'];
}

它对我的工作

$address = "Your Address";
        $prepAddr = str_replace(' ', '+', $address);
        $geocode = file_get_contents('http://maps.google.com/maps/api/geocode/json?address=' . $prepAddr . '&sensor=false');
        $output = json_decode($geocode);
        $latitude = $output->results[0]->geometry->location->lat;
        $longitude = $output->results[0]->geometry->location->lng;