我正在try 组合和排序来自几个db查询的结果.

$events = collect();

$downedEvents = EventDowned::where('mission', $missionId)
   ->orderBy('mission_time', 'asc')
   ->get();

$events->push($downedEvents);

$getInOutEvents = EventGetInOut::where('mission', $missionId)
   ->orderBy('mission_time', 'asc')
   ->get();

$events->push($getInOutEvents);

$missileEvents = EventMissile::where('mission', $missionId)
   ->orderBy('mission_time', 'asc')
   ->get();

$events->push($missileEvents);

$flattenedEvents = $events->flatten();
$sortedEvents = $flattenedEvents->sortBy('mission_time');

return $sortedEvents->all();

结果如下:

ss

正如您所见,它正确地组合了结果,但它们仍保持原始查询顺序,没有排序.

我也试过了

$sortedEvents = $flattenedEvents->sortBy(function($event) {
    return (int) $event->mission_time;
});

推荐答案

对我来说,这是一个巨大的失败,我的漂亮打印JSON chrome扩展扰乱了显示顺序,查看原始响应表明它们实际上已正确排序…::脸掌::

Laravel相关问答推荐

如何将错误从laravel恢复到inertiajs/vue 3应用程序?

如何使中继器项目计数动态Laravel Filament V3?

Livewire 3分页在点击后不更新页面

模型文件名更改数据库中的表名

LARVAL SAVE 中的关系有

assertSee 由于 html 代码中的空格而失败

未找到 apiResource 404 中的变量

如何为 CMP 横幅安装谷歌同意脚本?

条带 api 判断现有卡

带有时间戳的 Laravel 5.1 eloquent::attach() 方法

Homebrew PHP 似乎没有链接

如何在 Laravel 5.2 中手动发送密码重置请求?

Laravel 5:完整性约束违规:1452 无法添加或更新子行:外键约束失败

扩展模型 == 扩展 Eloquent?

Laravel 隐藏属性.例如密码 - 安全

如何在 Laravel 5.2 中使用 OR 条件将多个参数传递给中间件

Laravel 在域和子域中共享 cookie 检测问题

如何在 Laravel 测试中禁用选定的中间件

Laravel 5 默认注册后如何发送邮件?

Distinct values with pluck