Общая информация
Я использую этот пакет
GeocoderLaravel Версия: 4.0.0
Версия Laravel: 5.6
Версия PHP: 7.2.4
Операционная система и версия: Windows 10
Описание проблемы
FatalThrowableError (E_ERROR)
Call to a member function getStreetNumber() on null
Такое может случиться в 1/10 раз,Даже когда я использую те же координаты.В остальное время работает нормально.Если я получу ошибку и просто обновлю / повторно отправлю форму, она будет работать.Поэтому не уверен, как решить эту проблему.
Одно из предположений состоит в том, что он выталкивает Location::create()
, прежде чем объект возвращается к $geo
, но я не знаю, что можно сделать, чтобы это исправить.Любая помощь будет высоко ценится
Вот мой контроллер:
$lat = request('lat');
$lng = request('lng');
$geo = Geocoder::reverse($lat, $lng)->get()->first();
$location = Location::create([
'lat' => $lat,
'lng' => $lng,
'user_id' => Auth::user()->id,
'streetNumber' => $geo->getStreetNumber(),
'streetName' => $geo->getStreetName(),
'cityDistrict' => $geo->getSubLocality(),
'city' => $geo->getLocality(),
'zipcode' => $geo->getPostalCode(),
'country' => $geo->getCountry(),
'timezone' => $geo->getTimezone()
]);