-1

我想将此谷歌地图网址“http//maps.google.com/maps?f=q&q=14.674518%2C120.549043&z=16”转换为纬度和经度的值。

这是我的代码:

$string='http://maps.google.com/maps?f=q&q=14.674518%2C120.549043&z=16';
$regex=' , http://maps\.google\.com/maps\?q=\K[^&]+,';
preg_match($regex,$string,$m);
echo $m[0].'<br />';

谢谢!

4

2 回答 2

1

PHP中有很好的 URL 函数(parse_url()和):parse_str()

<?php
$query = array();
  //parse the url to get the QUERY_STRING
$urlParts = parse_url('http://maps.google.com/maps?f=q&q=14.674518%2C120.549043&z=16');
  //parse the QUERY_STRING to get the variables
parse_str($urlParts['query'], $query);

echo $query['q'];
  //returns 14.674518,120.549043
?>
于 2013-10-22T19:04:50.133 回答
0

我在上面的代码中添加了一个小改动以获得清晰的结果:

parse_str(htmlspecialchars_decode($urlParts['query']), $query);
于 2014-05-09T13:05:48.650 回答