0

我有一个数据库,每个条目可能输入 10 个日期。用户将选择开始和结束日期,我希望将所有日期输入到我的日历页面的数据库中。

$date1 = '2013-01-31';
$date2 = '2013-02-05';

for($one = $date1;$one>$date2;$one = strtotime(date('m/d/Y',$one)." -1 day"))
{
    echo $one;
} 

首先我需要提取所有的日期。以上不起作用。这意味着需要将日期 31/01/02/03/04/05 输入到数据库中。

4

1 回答 1

3

DateTime 使这变得更容易:

对于 PHP 5.3+ 用户

$start    = new DateTime('2013-01-31');
$end      = new DateTime('2013-02-05');
$interval = DateInterval::createFromDateString('1 day');
$period   = new DatePeriod($start, $interval, $end);

foreach ($period as $dt)
{
  echo $dt->format("m/d/Y") . PHP_EOL;
}

对于 PHP 5.2 用户

$start    = new DateTime('2013-01-31');
$end      = new DateTime('2013-02-05');
while ($start <= $end)
{
    echo $start->format("m/d/Y") . PHP_EOL;
    $start->modify("+1 day");
}

参考

于 2013-02-15T14:33:40.450 回答