在PHP中显示google place API的结果

时间:2014-03-22 16:56:02

标签: php google-api

我需要显示Google Place API的所有结果。

请求:

$x = $_POST['lat'];
$y = $_POST['long'];
$StringR="https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=$x,$y&radius=1500&types=restaurant&sensor=false&key=AIzaSyBwCNVKStx8rdNuTDif0JuuRvKRxMtoPRQ";

我用以下方式显示所有结果:

$StringaRR= file_get_contents($StringR);

$StringaRRR=  json_decode($StringaRR);

echo '<pre>';
print_r($StringaRRR);

我只打印第一个结果:

$name = $StringaRRR->results[0]->name;
echo "$name";

并且变量$name正确地返回Google Place提供的第一个结果的名称。

现在我想要显示,订购,所有结果都来自我的请求名称:

$i=0;

foreach($StringaRRR as $namel){
echo $namel->result[$i]->name;
$i=$i+1;
}

正确打印变量$name时,$ namel的打印返回此错误: 注意:尝试获取非对象的属性

1 个答案:

答案 0 :(得分:1)

仅供将来使用

我找到了解决方案,问题出在循环foreach中,为了正确使用而不是 foreach 必须使用 for ,如下所示:

for ($index = 0; $index < count($StringaRRR->results); $index++) {

echo $StringaRRR->results[$index]->name;
}

代码的前一部分是正确的。