如何访问geocoder-php / GeocoderLaravel返回的受保护对象?

时间:2016-05-05 22:07:06

标签: php laravel oop geocode

我安装了geocoder-php/GeocoderLaravel包,并根据文档对其进行了配置。然后我在控制器功能中运行了一点测试,然后它转到Google,解析了地址并成功返回了地理编码对象,但它受到保护,我无法访问它。那是什么?

代码:

$geocode = Geocoder::geocode('9900 Sowder Village Square, Manassas, VA 20109');
var_dump($geocode);

输出:

object(Geocoder\Result\Geocoded)#189 (15) { 
    ["latitude":protected]=> float(38.7392838) 
    ["longitude":protected]=> float(-77.5348982) 
    ["bounds":protected]=> array(4) { 
        ["south"]=> float(38.7392838) 
        ["west"]=> float(-77.5348982) 
        ["north"]=> float(38.7392838) 
        ["east"]=> float(-77.5348982) 
    } 
    ["streetNumber":protected]=> string(4) "9900" 
    ["streetName":protected]=> string(21) "Sowder Village Square"     
    ["cityDistrict":protected]=> NULL 
    ["city":protected]=> string(8) "Manassas" 
    ["zipcode":protected]=> string(5) "20109" 
    ["county":protected]=> string(21) "Prince William County"     
    ["countyCode":protected]=> string(21) "PRINCE WILLIAM COUNTY" 
    ["region":protected]=> string(8) "Virginia" 
    ["regionCode":protected]=> string(2) "VA" 
    ["country":protected]=> string(13) "United States" 
    ["countryCode":protected]=> string(2) "US" 
    ["timezone":protected]=> NULL 
}

我在互联网上搜索并发现了有关反射的内容,但我认为它不会那么复杂。这个关于gitHub的文档很糟糕。有什么指导吗?

感谢您抽出宝贵时间。

约什

1 个答案:

答案 0 :(得分:1)

该属性受到保护,因为API不希望您直接触摸属性;他们想要使用getter和setter。

http://geocoder-php.org/Geocoder/

  

getCoordinates()将返回一个坐标对象(具有纬度和经度属性);

这就是你想要的。