Php Laravel:反转分页查询的结果

Php Laravel:反转分页查询的结果,php,laravel,pagination,Php,Laravel,Pagination,我使用的是Laravel5.6,我想反转分页查询的结果。这就是我想做的: $chats = Chats::where('message_id', $message_id)->orderBy('id', 'DESC')->paginate(5); if(!empty($chats)) { $data['messages'] = $chats->reverse()->values(); $data['status'] = 200; $data['cre

我使用的是Laravel5.6,我想反转分页查询的结果。这就是我想做的:

$chats = Chats::where('message_id', $message_id)->orderBy('id', 'DESC')->paginate(5);
if(!empty($chats)) {
    $data['messages'] = $chats->reverse()->values();
    $data['status'] = 200;
    $data['create_user_id'] = Auth::id();
}else{
    $data['error'] = "No chats available";
}
但它会从结果中删除分页。假设表中有这10个值

1, 2, 3, 4, 5, 6, 7, 8, 9, 10
现在我想在第一页结果中显示
6,7,8,9,10
,在第二页结果中显示
1,2,3,4,5
,具体顺序是这样的

我怎么得到这个?请帮忙

->orderBy('id', 'DESC')
在分页查询中,应该为您提供

`10, 9, 8, 7, 6`
然后,只需反转输出中的值即可

`6, 7, 8, 9, 10`
代码示例:

// $chats here are instance of LengthAwarePaginator
// so we use ->items() to get the array of paginated objects
$chats = Chats::orderBy('id', 'desc')->paginate(5);
$data = [];

if ($chats->count()) {
    $data['reverseModels'] = collect($chats->items())->reverse();
    $data['reverseIds'] = collect($chats->items())->reverse()->pluck('id');
} else {
    $data['error'] = 'Error';
}
那么

在分页查询中,应该为您提供

`10, 9, 8, 7, 6`
然后,只需反转输出中的值即可

`6, 7, 8, 9, 10`
代码示例:

// $chats here are instance of LengthAwarePaginator
// so we use ->items() to get the array of paginated objects
$chats = Chats::orderBy('id', 'desc')->paginate(5);
$data = [];

if ($chats->count()) {
    $data['reverseModels'] = collect($chats->items())->reverse();
    $data['reverseIds'] = collect($chats->items())->reverse()->pluck('id');
} else {
    $data['error'] = 'Error';
}

我有一个查看员工出勤情况的功能,在这里,我按降序记录日期,对结果进行分页。我在这里得到了正确的结果

    public function viewAttendance($id){
        $q = Attendance::where('emp_id','=',$id)
           ->orderBy('date','desc')
           ->select('attendance.*')
           ->paginate(10);
        return $q;
    }

我有一个查看员工出勤情况的功能,在这里,我按降序记录日期,对结果进行分页。我在这里得到了正确的结果

    public function viewAttendance($id){
        $q = Attendance::where('emp_id','=',$id)
           ->orderBy('date','desc')
           ->select('attendance.*')
           ->paginate(10);
        return $q;
    }

我正在创建一个API。我需要按原样给出结果。在控制器中,它不允许我在分页时反转结果。请让我知道,如果你有任何工作的例子。我创建它作为一个API。我需要按原样给出结果。在控制器中,它不允许我在分页时反转结果。请让我知道,如果你有任何工作的例子。什么是“它从结果中删除分页”的意思?控制器返回什么?它从结果中删除分页是什么意思?你的控制器返回什么?