如何在PHP中对一个非常简单的日期数组进行排序

时间:2013-08-20 13:22:23

标签: php date sorting

我发现其他人都在问这个问题,但似乎没有明确解决这类问题的方法。

我有一个非常简单的日期数组,我想按日期重新排序。日期格式适用于.ics,我相信PHP可以在不需要转换的情况下进行解释。

非常感谢任何帮助!

Array
(
    [0] => 20120822T090000Z
    [1] => 20120823T090000Z
    [2] => 20120824T090000Z
    [3] => 20120825T090000Z
    [4] => 20120826T090000Z
    [5] => 20120827T090000Z
    [6] => 20120828T090000Z
    [7] => 20120829T090000Z
    [8] => 20120830T090000Z
    [9] => 20120831T090000Z
    [10] => 20130820T090000
    [11] => 20130821T110000Z
)

杰克

更新 - 我是个白痴!

对不起,大家,我刚刚意识到2012年的日期!!!!哎呀。所以问题出在我脚本的其他地方。我认为他们都是2013年8月。忽视!对不起,我是个白痴。

1 个答案:

答案 0 :(得分:1)

一个简单的sort()将完成这项工作,你只需要对无序数据正确使用sort()。

<?php

    // Deliberately moved out of order
    $dates[] = "20120827T090000Z";
    $dates[] = "20120822T090000Z";
    $dates[] = "20120829T090000Z";
    $dates[] = "20120823T090000Z";
    $dates[] = "20130820T090000";
    $dates[] = "20120824T090000Z";
    $dates[] = "20120825T090000Z";
    $dates[] = "20120826T090000Z";
    $dates[] = "20120828T090000Z";
    $dates[] = "20120830T090000Z";
    $dates[] = "20120831T090000Z";
    $dates[] = "20130821T110000Z";

    // Here they are out of order
    var_dump($dates);

    sort($dates);

    // now they are in order
    var_dump($dates);
?>