我需要显示来自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
,但是打印$name会返回这样的错误:注意:尝试获取非对象的属性
仅供将来使用
我已经找到了解决方案,问题是在循环foreach中,为了正确使用而不是foreach必须使用
for ($index = 0; $index < count($StringaRRR->results); $index++) {
echo $StringaRRR->results[$index]->name;
}
前面的代码是正确的