从JSON获取数据(使用Mapquest和PHP)

时间:2013-09-06 15:21:29

标签: php json mapquest

所以,我正在尝试配对Google和MapQuest的地理编码功能,因为某些地址无法通过Google进行地理编码,但它们出现在Mapquest上,因此我想将它们配对。我能够获得谷歌搜索结果:

$geocode=file_get_contents('http://maps.google.com/maps/api/geocode/json?address='.$prepAddr.'&sensor=false');
$output= json_decode($geocode);
$lat1 = $output->results[0]->geometry->location->lat;
$lon1 = $output->results[0]->geometry->location->lng;

如何使用MapQuest获得结果?我从来没有使用过MapQuest所以我不知道它是如何返回数据的,我在这里或任何地方都没有找到任何可以显示检索数据的东西......

HELP!谢谢!

2 个答案:

答案 0 :(得分:7)

您可以使用Jay Sheth的示例代码然后获取经度和纬度:

$json = file_get_contents('http://open.mapquestapi.com/geocoding/v1/address?key={your_key_here}&location=Lancaster,PA');
$jsonArr = json_decode($json);

$lat1 = $jsonArr->results[0]->locations[0]->latLng->lat;
$lon1 = $jsonArr->results[0]->locations[0]->latLng->lng;

答案 1 :(得分:3)

这段代码应该让你开始:

<?php
//Important: do not pass the callback=xyz parameter (as stated in the docs)
$json = file_get_contents('http://open.mapquestapi.com/geocoding/v1/address?key={your_key_here}&location=Lancaster,PA');
$jsonArr = json_decode($json);
print_r($jsonArr);
//Access latitude, longitude, etc. from PHP standard object
?>

更多信息: http://open.mapquestapi.com/geocoding/