PHP Carbon,获取日期范围之间的所有日期?

2022-08-30 07:47:28

如何以 PHP 格式获取两个日期之间的所有日期?更喜欢使用碳作为日期。

$from = Carbon::now();
$to = Carbon::createFromDate(2017, 5, 21);

我想拥有这两个日期之间的所有日期。但是如何做到呢?只能使用 strtotime 函数找到解决方案。


答案 1

从碳1.29开始,可以做到:

$period = CarbonPeriod::create('2018-06-14', '2018-06-20');

// Iterate over the period
foreach ($period as $date) {
    echo $date->format('Y-m-d');
}

// Convert the period to an array of dates
$dates = $period->toArray();

有关更多详细信息,请参阅文档:https://carbon.nesbot.com/docs/#api-period


答案 2

以下是我如何做到的Carbon

private function generateDateRange(Carbon $start_date, Carbon $end_date)
{
    $dates = [];

    for($date = $start_date->copy(); $date->lte($end_date); $date->addDay()) {
        $dates[] = $date->format('Y-m-d');
    }

    return $dates;
}

推荐