$start = new DateTime('2013-08-16');
$interval = new DateInterval('P1D');
$end = new DateTime('2013-08-20');
$end->add(new DateInterval('P1D'));
$period = new DatePeriod($start, $interval, $end);
foreach ($period as $date) {
echo $date->format('Y-m-d') . "<br />";
}
我找到了上面的代码来获取两个静态日期之间的所有日期。
我想要的是获取多个$ start $ end对之间的日期。方案是将变量($ start,&amp; end)与db中的字段相关联,以便生成多个对,并将这些对之间的日期转换为数组。
有可能吗?
谢谢!
答案 0 :(得分:0)
只需在类似函数中编写代码
function find_dates_between( $start_date, $end_date) {
$start = new DateTime($start_date);
$interval = new DateInterval('P1D');
$end = new DateTime($end_date);
$end->add(new DateInterval('P1D'));
$period = new DatePeriod($start, $interval, $end);
foreach ($period as $date) {
echo $date->format('Y-m-d') . "<br />";
}
}
之后只需调用函数
find_dates_between( $start_date, $end_date);
从您的数据库中提取$ start_date和$ end_date