如何使用 PHP 在两个日期之间进行迭代

Bog*_*dan 0 php datetime date

我有一个date_start和一个date_end字符串,我想迭代两个日期之间的每一天。

像下面这样的东西

$dateStart = "2017-07-18";
$dateEnd = "2017-08-08";
$datesInBewteen = getDatesInBetween($dateStart, $dateEnd);
foreach ($datesInBetween as $date) {
    // do stuff
}
Run Code Online (Sandbox Code Playgroud)

这个函数应该是什么样getDatesInBetween的?

Mil*_*eda 5

这是适合您的工作代码:https://eval.in/842849

您应该使用DatePeriod开始日期日期间隔结束日期作为参数的which。

您将获得结果对象,您可以循环该对象以获取两个日期之间所需的日期:

<?php
$begin = new DateTime('2017-07-18');
$end = new DateTime('2017-08-08');

$daterange = new DatePeriod($begin, new DateInterval('P1D'), $end);

foreach($daterange as $date){
    echo $date->format("Y-m-d") . "\n";
}

?>
Run Code Online (Sandbox Code Playgroud)