将关联数组与日期排序为日期顺序

时间:2013-07-25 13:10:53

标签: php arrays sorting

所以我有一个深度为1级的关联数组(摘录如下)但是有很多条目

[0] => Array
            (
                [Electronic] => 1
                [Scope] => Intruder Alarm Systems                                                                              
                [Issued Date] => 2013-07-23 01:03:41
                [Customer Name] => qqqq
                [Certificate Number] => 1291087
            )

        [1] => Array
            (
                [Electronic] => 1
                [Scope] => CCTV Systems                                                                                        
                [Issued Date] => 2013-07-23 01:02:01
                [Customer Name] => qqqqq
                [Certificate Number] => 1291085
            )

        [2] => Array
            (
                [Electronic] => 1
                [Scope] => CCTV Systems                                                                                        
                [Issued Date] => 2013-07-17 07:15:06
                [Customer Name] => Accent Foundation Ltd
                [Certificate Number] => 1290822
            )

我需要一种循环遍历此数组并重新排序的方法,以便最新的是第一个,依此类推。基本上就好像你是从数据库中选择它并使用" ORDER BY"发布日期" DESC"

我无法想到这样做的方法。

2 个答案:

答案 0 :(得分:1)

您可以使用usort和您自己的自定义功能进行排序。

usort($array, function ($a, $b) {
     $atime = strtotime($a['Issue Date']);
     $btime = strtotime($b['Issue Date']);
     return $atime - $btime;
});

答案 1 :(得分:0)

总是在从db本身获取数据时进行排序/排序,因为循环结构以你想要的方式在性能方面将是昂贵的,因为你已经从db中读取数据,那么它本身就是最好的方式。< / p>