0

我从数据库中得到一个数组,如下所示:

array
(
[section] => colours
[dd] => 1
[mm] => 3
[yy] => 13
[name] => red
)
array
(
[section] => colours
[dd] => 15
[mm] => 3
[yy] => 13
[name] => green
)
array
(
[section] => colours
[dd] => 15
[mm] => 3
[yy] => 13
[name] => blue
)

现在我想将每种颜色的日期(dd/mm/yy)转换为 unix 时间戳,以便稍后将其与当前时间戳进行比较。

有什么建议么??提前致谢

4

2 回答 2

0

您可以使用该功能strtotime,例如:

<?php

$dates = array(
    array(
        'section' => 'colours',
        'dd' => 1,
        'mm' => 3,
        'yy' => 13,
        'name' => 'red',
    ),
    array(
        'section' => 'colours',
        'dd' => 15,
        'mm' => 3,
        'yy' => 13,
        'name' => 'green',
    ),
    array(
        'section' => 'colours',
        'dd' => 15,
        'mm' => 3,
        'yy' => 13,
        'name' => 'blue',
    ),
);


for ($i = 0; $i < count($dates); $i++) {
    $dates[$i]['timestamp'] = strtotime('20' . $dates[$i]['yy'] . '-' . $dates[$i]['mm'] . '-' . $dates[$i]['dd']);
}

print_r($dates);

产生输出:

Array
(
    [0] => Array
        (
            [section] => colours
            [dd] => 1
            [mm] => 3
            [yy] => 13
            [name] => red
            [timestamp] => 1362092400
        )

    [1] => Array
        (
            [section] => colours
            [dd] => 15
            [mm] => 3
            [yy] => 13
            [name] => green
            [timestamp] => 1363302000
        )

    [2] => Array
        (
            [section] => colours
            [dd] => 15
            [mm] => 3
            [yy] => 13
            [name] => blue
            [timestamp] => 1363302000
        )

)
于 2013-10-25T13:34:05.293 回答
0
strtotime($data['dd'].'-'.$data['mm'].'-'.$data['yy']);
于 2013-10-25T13:28:55.857 回答