這裏的工作是給我的錯誤在PHP 5.3,其完美地運行在PHP 5.4得到錯誤的PHP 5.3,其在PHP 5.4
if ($user->getGeoCode()) {
$latitude = $user->getGeoCode()['latitude'];
}
錯誤消息是這一行:
Parse error: syntax error, unexpected '[' in IndexController.php on line 29
這裏是我的用戶級別:
class User {
.....
public function getGeoCode() {
$geoCode=array();
if ($this->getAddress() && $this->getCity() && $this->getCountry()) {
$address = urlencode($this->getAddress() . ' ' . $this->getCity() . ' ' . $this->getPostalCode() . ' ' . $this->getCountry()->getName());
$geocode = file_get_contents('http://maps.google.com/maps/api/geocode/json?address=' . $address . '&sensor=false');
$output = json_decode($geocode);
if ($output->status=='OK') {
$geoCode['latitude']=$output->results[0]->geometry->location->lat;
$geoCode['longitude']=$output->results[0]->geometry->location->lng;
return $geoCode;
}
else {
return null;
}
}
else {
return null;
}
}
}
此錯誤與PHP版本有關嗎?
可以請你打印的用戶$值> getGeoCode(); – 2013-04-04 06:56:42
如果你在括號中圍住你的電話,該怎麼辦? **($用戶> getGeoCode())[ '緯度'] **。你也可以嘗試一個斷言:$ tmp = $ user-> getGeoCode(); $緯度= $ TMP []; – Azathoth 2013-04-04 07:14:40