PHP:返回数组中两个日期之间的所有日期
给定两个日期,常见任务是检索该范围内的所有日期。这可以通过 PHP 中的各种方法来实现。
方法 1:使用循环
最简单的解决方案是使用循环遍历指定范围内的每一天。下面是一个示例:
<?php function getDatesFromRange($start_date, $end_date) { $dates = array(); $start = new DateTime($start_date); $end = new DateTime($end_date); $end->add(new DateInterval('P1D')); $temp = $start; while ($temp <= $end) { $dates[] = $temp->format('Y-m-d'); $temp->add(new DateInterval('P1D')); } return $dates; }
方法 2:使用 DatePeriod 类
PHP 还提供了 DatePeriod 类来处理日期范围。使用方法如下:
<?php function getDatesFromRange($start_date, $end_date) { $period = new DatePeriod( new DateTime($start_date), new DateInterval('P1D'), new DateTime($end_date) ); $dates = array(); foreach ($period as $date) { $dates[] = $date->format('Y-m-d'); } return $dates; }
输出
两种方法都会返回指定范围内的日期数组,如预期输出所示:
Array( '2010-10-01', '2010-10-02', '2010-10-03', '2010-10-04', '2010-10-05' )
以上是如何获取 PHP 数组中两个日期之间的所有日期?的详细内容。更多信息请关注PHP中文网其他相关文章!