public function index(Request $request) { $asc = preg_match("/^[\\-]{1}/", $request->input('order', '-created_at')) ? 'DESC' : 'ASC'; $order = preg_replace("/^[\\-]{1}/", "", $request->input('order', '-created_at')); $stmt = Role::orderBy($order, $asc); if ($request->input('filter')) { $q = $request->input('filter'); $stmt->where('name', 'like', '%' . $q . '%'); } $roles = $stmt->paginate($request->input('limit')); return response()->json($roles); }