Laravel使用Carbon Interval创建日期范围

时间:2016-05-24 09:30:57

标签: php laravel

我想获得日期范围,例如:

$startDate = Carbon::now()->subWeek();
$endDate = Carbon::now();
$period = new DatePeriod($startDate, CarbonInterval::day(), $endDate);

foreach ($period as $row) {
        $date = $row->format('Y-m-d');
        echo $date. ',  ';

}

这些代码会在这个日期返回给我:

2016-04-24,  2016-04-25,  2016-04-26,  2016-04-27, ... until 2016-05-23

但问题是,日期未返回今天的日期(2016-05-24)。

如何使用上述代码获取今天的日期?

感谢。

今天我可以将$endDate = Carbon::now();更改为$endDate = Carbon::now()->tomorrow();

但是阅读代码时有点奇怪。

1 个答案:

答案 0 :(得分:1)

    $numberOfDays = $endDate->diffInDays($startDate);
    foreach (range(0, $numberOfDays) as $day) {
        $dates[] = $endDate->copy()->subDays($day)->format('Y-m-d');
    }