如何按声誉和创建日期对集合进行排序

时间:2017-01-09 17:25:05

标签: php laravel sorting

假设我想按声誉对用户列表进行排序:

  1. 有5个声望的用户
  2. 有3个声望的用户
  3. 声誉为0的用户(此用户在第4位用户之前注册)
  4. 信誉为0的用户
  5. 通过$query->get()->sortByDesc('reputation'),我收到以下结果:

    1. 有5个声望的用户
    2. 有3个声望的用户
    3. 信誉为0的用户
    4. 声誉为0的用户(此用户在第4位用户之前注册)
    5. 如何对集合进行排序以接收与第一个示例类似的结果?换句话说,如果用户的声誉为0,如何按降序将排序方法更改为创建日期?

1 个答案:

答案 0 :(得分:2)

在查询中链接两个orderBy()方法:

->orderBy('created_at', 'desc')->orderBy('reputation', 'desc')->get();