1
我正在构建一个应用程序,它需要'城市','州'(仅适用于美国)和距离(半径)作为用户输入,输出将是该半径内的所有城市。有没有免费或付费的网络服务可用于此?城市附近城市Webservice或PHP代码
感谢您的帮助 问候 卡佛里
我正在构建一个应用程序,它需要'城市','州'(仅适用于美国)和距离(半径)作为用户输入,输出将是该半径内的所有城市。有没有免费或付费的网络服务可用于此?城市附近城市Webservice或PHP代码
感谢您的帮助 问候 卡佛里
我个人使用的纬度和经度来定义这样的半径。看看我的代码,如果你需要帮助转换城市来协调谷歌地理编码可以真正有帮助。或者只是回复,我们会看看。
/**
* @author Stefano Groenland
* @return string
*
* Uses the geobyte API for nearby cities in a radius arround the lat & long coords of a given location.
*/
public function getLocationsInRadius(){
$radius = Input::get('radius');
$lat = Input::get('lat');
$lng = Input::get('lng');
$radius = $radius * 0.62137; //km to miles
$url = 'http://gd.geobytes.com/GetNearbyCities?radius='.$radius.'&Latitude='.$lat.'&Longitude='.$lng.'&limit=999';
$response_json = file_get_contents($url);
$response = json_decode($response_json, true);
return $response;
}
我还没有使用一个在一段时间,也仅针对地理编码完整的地址,但我认为几乎任何地图API(谷歌,雅虎等)会允许你这样做。它可能不是一个单一的API调用,但功能应该在那里实现它在你的目的地,一旦你有地理数据的初始点。 – prodigitalson 2010-02-08 21:18:20
感谢您的评论。我检查了谷歌API但困惑了一下。我为我的工作从http://ipinfodb.com/下载了地理数据。它有所有需要的信息。我找到了API来获得两个城市之间的距离(邮政编码),但不幸的是,我必须检查所有的城市,以获得所需的结果。我相信应该有一些方法来让它容易的方式。如果你看看http ://www.geobytes.com/IpLocator.htm在右侧框中,它们提供了距离您的IP更近的所有城市。我是一些寻找相同的东西,但在我的情况下,用户输入城市信息和距离。 -Kaveri – user268982 2010-02-09 20:11:07