首页 >后端开发 >php教程 >如何在 PHP 中查找两个指定日期之间的所有日期?

如何在 PHP 中查找两个指定日期之间的所有日期?

Susan Sarandon
Susan Sarandon原创
2024-10-20 22:38:30827浏览

How to Find All Dates Between Two Specified Dates in PHP?

查找两个指定日期之间的日期

如果您在 PHP 项目中使用日期和时间间隔,常见任务是确定给定范围内的各个日期。以下是解决此问题的方法:

考虑两个日期:2010 年 4 月 20 日和 2010 年 4 月 22 日。要获取格式为 20、21、22 的日期列表,请按照以下步骤操作:

  1. 将字符串日期转换为 UNIX 时间戳:
<code class="php">$start = strtotime('20-4-2010');
$end = strtotime('22-4-2010');</code>
  1. 迭代日期范围:
<code class="php">for($current = $start; $current <= $end; $current += 86400) {
    echo date('d', $current);
}

在这里,我们从开始时间戳迭代到结束时间戳,每次迭代增加一天(86400 秒)。 date() 函数用于从时间戳中提取日期。

替代方法:

  • 使用特定数量的天:

    <code class="php">for($i = 0; $i <= 2; $i++) {
      echo date('d-m-Y', strtotime("20-04-2010 +$i days"));
    }
  • 使用 PHP 5.3 的 DatePeriod 类:

    <code class="php">$period = new DatePeriod(
      new DateTime('20-04-2010'),
      DateInterval::createFromDateString('+1 day'),
      new DateTime('23-04-2010') // or pass in just the no. of days: 2
    );
    
    foreach ( $period as $dt ) {
    echo $dt->format( 'd-m-Y' );
    }</code>

    以上是如何在 PHP 中查找两个指定日期之间的所有日期?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn