用时间戳排序数组?

qwe*_*rty 5 php arrays sorting timestamp date

我有一组时间戳,如下所示:

2012-11-19 19:45
Run Code Online (Sandbox Code Playgroud)

我需要按日期对它们进行排序.如果我能得到一个日期的unix时间戳,我可以做冒泡排序或其他什么,但我不知道是什么功能给了我.我看了strtotime但它不会让我通过日期格式.我也不确定冒泡排序是最好的方法.

有什么建议?

数组示例:

此外,对不起,我应该提到它是在'show_date'.

Array
(
    [15] => Array
        (
            [show_date] => 2012-11-19 10:40
        )

    [16] => Array
        (
            [show_date] => 2012-11-20 10:40
        )

    [17] => Array
        (
            [show_date] => 2012-11-21 10:40
        )

    [18] => Array
        (
            [show_date] => 2012-11-22 10:40
        )

)
Run Code Online (Sandbox Code Playgroud)

Bot*_*ázs 4

没必要把这个事情搞得太复杂。只需使用内置sort函数:

sort($timestamp_array);
Run Code Online (Sandbox Code Playgroud)

您不需要转换为 UNIX 时间戳,因为字符串采用标准的“ISO 可排序日期”格式。这意味着如果您对字符串进行排序,日期将按正确的顺序排列。

这是一个php -a演示其工作原理的会话:

php > $ts = array('1986-01-31 12:11', '2012-01-01 13:12', '1980-10-10 12:00');
php > sort($ts);
php > echo var_export($ts);
array (
  0 => '1980-10-10 12:00',
  1 => '1986-01-31 12:11',
  2 => '2012-01-01 13:12',
)
Run Code Online (Sandbox Code Playgroud)