【问题标题】:What should i do to parse Google Maps link to location coordinates?我应该怎么做才能将谷歌地图链接解析到位置坐标?
【发布时间】:2016-03-18 03:44:08
【问题描述】:

在我的 iPhone 上的搜索结果中复制了 Google 地图链接,它看起来像:

https://maps.google.com.tw/maps?hl=zh-tw&client=safari&yv=2&um=1&ie=UTF-8&fb=1&gl=tw&entry=s&sa=X&ftid=0x89c259594d6968cd:0x122305eef8f02a47&gmm=CgIgAQ%3D%3D

当我在浏览器中打开链接时,它最终会被重定向到下面的链接:

https://www.google.com.tw/maps/place/Best+Pizza/@40.7155798,-73.955601,17z/data=!3m1!4b1!4m2!3m1!1s0x89c259594d6968cd:0x122305eef8f02a47?hl=zh-tw

其中包含我正在寻找的位置坐标。

但是,我应该怎么做才能从这个链接中找到位置坐标而不通过浏览器发送它?

我认为“ftid”是用于在地图中查找位置的参数。但我找不到与“ftid”相关的任何内容。

【问题讨论】:

  • 经度和纬度
  • @FiidoFirdauz 嗨,感谢您的评论,这意味着什么?

标签: google-maps parsing location coordinates latitude-longitude


【解决方案1】:

我遇到了同样的问题,我将使用您提供的链接(从谷歌地图分享链接)来做些什么

https://www.google.com/maps/place/The+address+seperated+with+plus/@9.419263,99.957389,17z/data=!3m1!4b1!4m5!3m4!1s0x3054f4c49057b05d:0xb45d09053b0298d4!8m2!3d9.419263!4d99.959583

使用 php 我将该字符串转换为数组

$pts = explode('/',$string);

这给了我:

[0] => https:
    [1] => 
    [2] => www.google.com
    [3] => maps
    [4] => place
    [5] => 4170,+Tambon+Taling+Ngam,+Amphoe+Ko+Samui,+Chang+Wat+Surat+Thani+84140,+Thailand
    [6] => @9.419263,99.957389,17z
    [7] => data=!3m1!4b1!4m5!3m4!1s0x3054f4c49057b05d:0xb45d09053b0298d4!8m2!3d9.419263!4d99.959583

我只需要密钥 6,它总是一样的,你总是有 0 - 5

接下来我对其[6]做同样的事情

$cords = explode(',',$pts[6]);

这给了我”

[0] => @9.419263
[1] => 99.957389
[2] => 17z
I use this to store the lon / lat
$lon = str_replace('@','',$cords[0]);
$lat = $cords[1];

希望有帮助,它对我有用!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-12
    • 1970-01-01
    • 2013-08-19
    • 2011-11-23
    • 2012-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多