Я хочу сохранить эту переменную в моей базе данных, эта переменная получается в результате выполнения постгис-запроса в laravel, но каждый раз, когда я пытался, я всегда получал ошибку "преобразование массива в строку" .
Что я использовал:
- Laravel v 5.8.17
- Postgis v 2.5
Я установил postgis в базе данных, ямогу выполнить запрос из pgadmin, но я не знаю, как это сделать из laravel
$longitude = $request->input('longitude');
$latitude = $request->input('latitude');
$topoint = "SELECT ST_GeomFromText('POINT(".$longitude." ".$latitude.")', 4326)";
$res = DB::select(DB::raw($topoint));
Какую настройку в laravel я должен сделать, чтобы применить запрос postgis, и этот запрос привел геом этой точки?
Обновление
Я пытался добавить новый код
$resultfromdb = DB::select(DB::raw($topoint));
$geomresult = json_encode($resultfromdb);
$post->apill_geom = $geomresult;
, но это привело к новой ошибке, это
SQLSTATE[XX000]: внутренняя ошибка: 7 ОШИБКА: ошибка синтаксического анализа - неверная геометрия СОВЕТ: "[{" <- ошибка синтаксического анализа в позиции 2 в геометрии (SQL: вставить в "e_apill" ("kode", "waktu", "desa")Значения "," kecamatan "," kondisi "," apill_geom "," jenis "," lokasi ") (a8a, 2019-05-20 04:46:03,?,?,?, [{" st_geomfromtext ":" 0101000020E61000000000005E77965B400635AD3816DE1EC0 "}], APILL,?), возвращая" gid ") * </p>
Что нужно сделать, чтобы получить это значение 0101000020E61000000000005E77965B400635AD3816DE1EC0 * 1030 в переменной $