是否有基于特定键排序的功能?

我有一个数组,我想在运行 foreach 循环之前根据它的特定键进行排序我已经尝试过 ksort 但它在这种情况下不起作用


[0]=>

  object(stdClass)#4829 (23) {

    ["ID"]=>

    string(4) "4089"

    ["post_author"]=>

    string(1) "1"

    ["post_date"]=>

    string(19) "2018-10-31 06:28:57"

    ["post_date_gmt"]=>

    string(19) "2018-10-31 06:28:57"

    ["post_content"]=>

    string(48) "Sessions move 1 hour earlier from 30th September"

    ["post_title"]=> 'test'

}

[1]=>

  object(stdClass)#4830 (24) {

    ["ID"]=>

    string(4) "4030"

    ["post_author"]=>

    string(1) "1"

    ["post_date"]=>

    string(19) "2018-10-31 06:28:57"

    ["post_date_gmt"]=>

    string(19) "2018-10-31 06:28:57"

    ["post_content"]=>

    string(48) "Sessions move 1 hour earlier from 30th September"

    ["post_title"]=> 'test'

}

这是我从我的数据库中获取的数据,我想以相对于post_date. 我需要在为每个循环运行之前对其进行排序以显示课程


慕斯709654
浏览 117回答 2
2回答

幕布斯7119047

我假设您使用普通的 MySQL 从数据库中获取数组。添加ORDER BY post_date到您的查询中。

慕姐4208626

最好的方法是在查询中按 post_date 排序。但是,如果你真的想用 PHP 来做,你可以使用array_multisort并像这样使用它:对于PHP 5.6+:$dates = array_column($yourArray, 'post_date');array_multisort($dates , SORT_NUMERIC, $yourArray);如果PHP 版本较低:$dates=array();foreach ($data as $key => $row) {   $dates[$key]  = $row['post_date'];}array_multisort($dates , SORT_NUMERIC, $yourArray);
打开App,查看更多内容
随时随地看视频慕课网APP