1], methods: ['GET'])] public function region(Request $request): Response { $x = $request->get('x'); $y = $request->get('y'); $range = $request->get('range'); $statement = DB::query( 'select * from villages where x>=:x1 and x<=:x2 and y>=:y1 and y<=:y2', [ 'x1' => $x - $range, 'x2' => $x + $range, 'y1' => $y - $range, 'y2' => $y + $range, ] ); $villages = $statement->fetchAll(); $map = []; foreach ($villages as $village) { $map[$village['x']][$village['y']] = $village; } return new Response(View::render('map.twig', [ 'x' => $x, 'y' => $y, 'range' => $range, 'map' => $map, ])); } }