谷歌地理编码Javascript API-如何获取坐标?

谷歌地理编码Javascript API-如何获取坐标?,javascript,google-maps,google-maps-api-3,geocoding,Javascript,Google Maps,Google Maps Api 3,Geocoding,我想谷歌地图转换成地图坐标用户提交的地址。我只希望这些坐标存储在变量中,以便以后访问: function map_search() { console.log("search form functional"); // sanity check var searchLoc = $('#search_location').val(); console.log(searchLoc); var searchCoords = geocoder.geocode( {'add

我想谷歌地图转换成地图坐标用户提交的地址。我只希望这些坐标存储在变量中,以便以后访问:

function map_search() {
    console.log("search form functional"); // sanity check
    var searchLoc = $('#search_location').val();
    console.log(searchLoc);
    var searchCoords = geocoder.geocode( {'address': searchLoc});
    console.log(searchCoords);

    ...
}
我是这样设置的:

var geocoder = new google.maps.Geocoder();
这一直适用于定义
var seachCoords
的位置。在控制台中,它只是打印为
未定义的

其他谷歌地图功能在此页面上成功运行。 是我的JavaScript错误,还是我不正确地使用了这个地理编码器?

试试这个php脚本:

function getCoordinates($address){

$address = str_replace(" ", "+", $address); // replace all the white space with "+" sign to match with google search pattern

$url = "http://maps.google.com/maps/api/geocode/json?sensor=false&address=$address";

$response = file_get_contents($url);

$json = json_decode($response,TRUE); //generate array object from the response from the web

return ($json['results'][0]['geometry']['location']['lat'].",".$json['results'][0]['geometry']['location']['lng']);

}
如何在php中调用函数:

echo getCoordinates('740 Story Rd San Jose CA 95122');
Result : 37.328865,-121.8581845

地理编码服务要求在检索地理编码器的结果时执行回调方法。此回调应按顺序传递两个参数以保存结果和一个状态代码

例如:

geocoder.geocode( { 'address': address}, function(results, status) {
      if (status == google.maps.GeocoderStatus.OK) {
        console.log(results); // all results
        console.log(results[0].geometry.location); // "first" location
      } else {
        alert("Geocode was not successful for the following reason: " + status);
      }
    });

注意:这本质上是异步的,所以不要尝试将其放在返回语句中返回结果[0]
的函数中。几何体。位置

到底是什么问题?哇。我以前从未使用过PHP。在实现它之前,我应该花一些时间来学习。PHP是服务器端的——这是一个什么样的答案啊?是的,我想是的。我没有使用PHP.OK。我不想创建一个标记,但我想我可以尝试使用这种策略通过POST请求发送坐标,这就是我正在尝试的。谢谢你的发现。我发布了文档中的确切代码-我将进行编辑以避免混淆问题问你:)如果我在这里保存变量,它应该保存到以后,还是需要将我的POST ajax代码包装在这个函数中?将其保存在全局中,或者使用回调,或者使用承诺-选择是yoursYeah,异步的那一点让我感到厌烦。当它保存变量时,需要它的函数已经失败了。