Php获得最新日期

时间:2013-04-19 04:02:11

标签: php date compare

我在php工作,我有一个字符串格式的日期列表。我想得到最新的一个,并让函数返回它..我似乎无法让它工作..也许有人可以帮助我..

<?php
    $list_of_dates = array("04/17/1999 05:15 AM - CST", "04/17/2000 05:18 AM - CST", "04/17/2000 05:19 AM - CST");

    function getLatestDate($in){
        $ret = ""; 
        foreach($in as &$date){
         $cnt = strtotime($date);
         if(strtotime($ret) > $cnt){
            $ret = $date;
         }
        }

        return $ret;
    }
?>

1 个答案:

答案 0 :(得分:3)

您的病情似乎已逆转:

if(strtotime($ret) > $cnt){
        $ret = $date;
     }

应该是:

if ($ret === '' || strtotime($ret) < $cnt){
        $ret = $date;
     }

如果$ret的值低于$cnt,则会覆盖$ret。在第一次迭代中,strtotime('')将是空字符串,因此您总是希望覆盖它;当然,{{1}}可能总是低于其他任何东西,但这是区分的好形式。