试图获得非对象的属性,在Cakephp中使用谷歌地图进行反向地理编码


Trying to get property of non-object,reverse geocoding with Google maps in Cakephp

我正在开发Cakephp2.x,我已经使用谷歌地图助手成功地实现了谷歌地图此处

https://github.com/marcferna/CakePHP-GoogleMapHelper

现在我正试图在lattitude和langtitude 的基础上获得格式化的地址

我在做这个

 $url ="https://maps.googleapis.com/maps/api/geocode/json?  latlng=$latitude,$longitude&sensor=true";

$json = @file_get_contents($url);

$data=json_decode($json);

$status = $data->status;
if($status=="OK"){
    $address = $data->results[0]->formatted_address;
}

它给了我的错误

正在尝试获取此线上非对象的属性

   $status = $data->status;

假设latlng之前的空白在原始代码中不存在(当它存在时,将其删除):

当您通过HTTPS请求资源时,服务器需要支持SSL(请参阅如何让file_get_contents()使用HTTPS?)。

您可以启用SSL支持,也可以通过HTTP请求文件:

$url ="http://maps.googleapis.com/maps/api/geocode/json?latlng=$latitude,$longitude&sensor=true";
//---------^  remove the s from https