gpt4 book ai didi

php - 根据包含时间戳的对象值对数组进行排序

转载 作者:搜寻专家 更新时间:2023-10-30 21:57:33 25 4
gpt4 key购买 nike

首先,我创建了 2 个不同的查询。

$first = first::where('id',$request->first_id)->select('name','created_at')->get();
$second = second::where('id', $request->second_id)->select('name','created_at')->get();

然后我合并两个结果数组。

$data_combine = array_merge($first->toArray(), $second->toArray());

最后,我想根据它们的 created_at 值按升序对组合数组进行排序,例如“2016-05-06 16:43:46”。

最佳答案

您可以使用 Laravel 集合方法轻松地做到这一点。与常规数组不同,使用集合你仍然可以访问 Laravel 在模型上提供的所有其他有用的集合方法。

您可以将您的数组合并到一个新集合中,然后对该集合进行排序。

collect(array_merge($first -> toArray(), $second -> toArray())) -> sortBy('created_at');

用更流畅的方式来写上面的内容也是可行的

$first -> push($second) -> flatten() -> sortBy('created_at');

为此,created_at 需要可见。如果尚未在您的模型的可见属性中定义(并且这样做是安全的),您需要先添加它。否则,您需要循环初始集合并运行 addVisible('created_at') 以使其对当前结果可见。

关于php - 根据包含时间戳的对象值对数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37068384/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com