2013-05-02 28 views
0

我想从数据库中显示发生在我的城市附近的事件。我尝试使用Google距离API计算给定城市和我的城市之间的距离。但问题是,距离是在javascript中,我必须将其与某个整数进行比较以确定是否列出事件,并对每个事件重复此过程。除了ajax或其他任何方法来计算两个城市之间的距离,是否有任何方法可以将值从JavaScript传递到php?php中的两个城市之间的距离

+2

一旦页面被渲染,javascript不能直接与php进行通信。这意味着您需要发送到服务器进行处理的任何数据都必须使用ajax,假iframe或常规表单提交。 – Ohgodwhy 2013-05-02 22:02:43

+1

@Ohgodwhy,这并不完全正确。您可以使用NodeJS或PhantomJS来运行JavaScript服务器端:http://phantomjs.org/ http://nodejs.org/ – 2013-05-02 22:06:38

+0

进行尝试。向我们展示一些代码,我们将尝试帮助您进行调试。 – ghoti 2013-05-02 22:06:55

回答

2

我不明白为什么你不能直接从你的服务器下载并解析json。

$json=file_get_contents("http://maps.googleapis.com/maps/api/distancematrix/json?origins=Vancouver+BC&destinations=San+Francisco&mode=bicycling&sensor=false"); 
$json=json_decode($json,true); 
$distance=$json["rows"][0]["elements"][0]["distance"]["value"]; 
echo $distance; 

这显示1677606,您可以在谷歌的距离here阅读起来。

您也可以在$ json上打印以查看响应的结构。

+0

感谢您的代码。它节省了我的时间 – 2014-01-22 05:20:35