如何将谷歌地图 url 转换为 iframe 友好的 url

Tes*_*est 4 php google-maps

这是一个示例网址:

https://www.google.co.uk/maps/place/Barnes+%26+Noble+Booksellers+86th+%26+Lexington/@40.7747314,-73.9653734,15z/data=!4m5!1m2!2m1!1sBarnes+%26 +Noble,+5th+Avenue,+New+York,+NY,+United+States!3m1!1s0x0:0xdec8ade72ab827a7

这显然不起作用:

<iframe
  width="600"
  height="450"
  frameborder="0" style="border:0"
  src="https://www.google.co.uk/maps/place/Barnes+%26+Noble+Booksellers+86th+%26+Lexington/@40.7747314,-73.9653734,15z/data=!4m5!1m2!2m1!1sBarnes+%26+Noble,+5th+Avenue,+New+York,+NY,+United+States!3m1!1s0x0:0xdec8ade72ab827a7"
</iframe> 
Run Code Online (Sandbox Code Playgroud)

如何将示例网址转换为适用于 iframe 的网址?我什至不必使用 iframe。我只想使用上面列出的格式提供的网址来集成谷歌地图。

如果这很重要,我正在使用 PHP。

Hal*_*and 5

鉴于您提供的 URL 格式,我会尝试将其转换为Google Maps Embed API URL。这需要一个 API 密钥。您有以下网址:

https://www.google.co.uk/maps/place/ Barnes+%26+Noble+Booksellers+ 86th +%26+Lexington /@40.7747314,-73.9653734,15z/data=!4m5!1m2!2m1!1sBarnes+%26 +Noble,+5th+Avenue,+New+York,+NY,+United+States!3m1!1s0x0:0xdec8ade72ab827a7

将其转换为嵌入 URL 只需要您提取已有的 URL 的地址部分。结果将是:

https://www.google.com/maps/embed/v1/place?key=API_KEY&q= Barnes+%26+Noble+Booksellers+86th+%26+Lexington

如果您要接收没有特定位置的 URL,只是一个视图,它可能如下所示:

https://www.google.co.uk/maps/@ 40.7777212,-73.9567045 , 15z

在此示例中,您必须提取纬度、经度和缩放级别 (15z),并创建一个如下所示的 URL:

https://www.google.com/maps/embed/v1/view?key=API_KEY¢er= 40.7777212,-73.9567045&变焦= 15

阅读 API 时,还有两种模式(搜索和方向)可以以类似的方式处理,但不太可能在您的情况下使用。

至于提取,我可能会使用正则表达式或搜索和子字符串,具体取决于您收到的 URL 的变化程度。