是的,PHP的DatePeriod類對日期范圍有一定的限制
setExcluded()
方法排除某些日期。你可以傳遞一個DateTime對象或字符串作為排除規則。排除規則可以是一個單獨的日期,也可以是一個日期范圍。以下是一個簡單的示例,展示了如何使用DatePeriod類創建一個包含特定日期范圍的實例:
<?php
require 'vendor/autoload.php';
use DateInterval as di;
use DateTime as dt;
$startDate = new dt('2021-01-01');
$endDate = new dt('2021-01-10');
$step = di::createFromDateString('2 days');
$period = new DatePeriod($startDate, $step, $endDate->add($step));
foreach ($period as $date) {
echo $date->format('Y-m-d') . PHP_EOL;
}
這個示例將輸出以下日期:
2021-01-01
2021-01-03
2021-01-05
2021-01-07
2021-01-09
請注意,DatePeriod類對日期范圍有限制,但它提供了足夠的靈活性來滿足大多數需求。如果你需要處理更復雜的日期范圍,可以考慮使用其他庫,如Carbon(https://github.com/briannesbitt/Carbon)。