Laravel 5.4 集合 sortByDesc 不起作用

Fir*_*iev 4 php collections laravel-5

我有两个关于 Eloquent 的查询,我收集并合并这些查询,然后进行合并,sortByDesc但它没有对集合进行排序。

$f_games = collect(Game::with('fUser', 'sUser')->where('first_user_id', Auth::user()->id)>get());
$s_games = collect(Game::with('fUser', 'sUser')->where('second_user_id', Auth::user()->id)->get());

$response = $f_games->merge($s_games)->sortByDesc('id');
Run Code Online (Sandbox Code Playgroud)

小智 5

您可以values()在排序结束时使用,如文档中所述

$gameCollection = collect($game);

$sorted = $gameCollection->sortByDesc('date');

return $sorted->values()->all();
Run Code Online (Sandbox Code Playgroud)

在你的情况下应该是

$response = $f_games->merge($s_games)->sortByDesc('id')->values();
Run Code Online (Sandbox Code Playgroud)