gpt4 book ai didi

php - 按php数组排序

转载 作者:可可西里 更新时间:2023-10-31 23:45:37 24 4
gpt4 key购买 nike

我需要根据 getNotifications 函数中的值 'start_date' DESC 顺序对通知数组进行排序:

$posts_id_arr = getPoststIds($conn);

foreach ($posts_id_arr as $key => $val) {
$total_arr[$key] = [
'notification' => getNotifications($val['post_id'], $user_id, $conn)
];
}

$response_array = array('data' => $total_arr, 'more things' => $more_array);
echo json_encode($response_array);

由于 foreach 循环,现在订单是按帖子 ID 排序的。

data {
notification:
[
{
post_id: “1",
start_date: "2016-10-10 08:00:00",
},
{
post_id: “1",
start_date: "2016-10-10 12:00:00",
}
],
notification:
[
post_id: “2",
start_date: "2016-10-10 09:00:00",
},
{
post_id: “2",
start_date: "2016-10-10 13:00:00",
}
]
}

我需要它是 1: 08:00, 2: 09:00, 1: 12:00, 2: 13:00

最佳答案

您可以使用自定义函数使用 uasort 对数组中的值进行排序.您的日期格式可以使用 strcmp 进行排序 - 过去的日期低于 future 的日期,因此您可以在比较器中使用它。

function sort_by_date($a, $b) {
return strcmp($a->start_date, $b->start_date);
}

$sorted_posts = uasort($total_arr->notification, 'sort_by_date');

$response_array = array('data' => $sorted_posts, 'more things' => $more_array);

关于php - 按php数组排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39952806/

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