【问题标题】:PHP: Parse from an array the oldest datePHP:从数组中解析最旧的日期
【发布时间】:2014-01-06 20:30:56
【问题描述】:

我有这个数组:

array(2) { 
    [0]=> array(2) {
        ["url"]=> string(104) "aHR0cDovL3lvdXR1YmUuY29t"
        ["date"]=> string(19) "2014-01-06 21:44:39" 
     }

    [1]=> array(2) { 
        ["url"]=> string(28) "aHR0cDovL3d3dy5nb29nbGUuY29t"
        ["date"]=> string(19) "2014-01-06 14:28:32"
     }
 } 

如何解析$row['date'] 的最早日期?

【问题讨论】:

  • 嗯,你可以排序,然后得到第一个/最后一个元素
  • 您是从数据库中获取这个数组吗?您可以更改查询(ORDER BY date ASC,如果您在 MySQL 中)以自动为您提供排序结果,最旧的日期在前。
  • @Esaevian Nop 它不是来自数据库

标签: php arrays parsing datetime


【解决方案1】:

我认为您可以使用 array_mapmin 函数来做到这一点:

function customFunction($array) {
  return $array['date'];
}
$dateArray= array_map('customFunction', $array);

所以,你有一个包含你的日期的数组,在这样做之后:

$oldDate = min($dateArray); //here you get the oldest date

【讨论】:

【解决方案2】:

要查找数组中的最小日期,请尝试此代码

 $minDate = min(array_map(function($item) { return $item['date']; }, $array));

【讨论】:

【解决方案3】:

像这样简单的事情应该做

$earliest_date = date_create();
foreach($rows as $row) {
    $date = date_create($row['date']);
    if($date < $earliest_date)
        $earliest_date = $date;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-10
    • 2013-07-06
    • 1970-01-01
    • 1970-01-01
    • 2019-01-24
    • 1970-01-01
    • 1970-01-01
    • 2022-11-10
    相关资源
    最近更新 更多