【问题标题】:Php get newest datephp获取最新日期
【发布时间】:2013-04-19 04:02:10
【问题描述】:

我正在使用 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;
    }
?>

【问题讨论】:

    标签: php date compare


    【解决方案1】:

    你的情况似乎逆转了:

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

    应该是:

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

    如果$ret 的值低于(旧)$cnt,您将需要覆盖它。在第一次迭代中,$ret 将是空字符串,所以你总是想覆盖它;当然,strtotime('') 可能总是比其他任何东西都低,但这是区分的好形式。

    【讨论】:

    • 似乎还是不管我做什么,它总是返回数组中的第一个条目..:/
    • @thefiscster510 因为您的日期格式错误,请参阅here 以获取有效代码。
    猜你喜欢
    • 2021-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-26
    • 2011-09-14
    • 2019-09-13
    • 2012-05-22
    相关资源
    最近更新 更多