0

我正在寻找一个看起来应该很简单的解决方案,但我似乎无法在这里找到任何好的答案,而且我似乎无法让它自己工作。

我正在寻找的是设置开始时间、结束时间,然后在给定的时间间隔之间迭代一组时间。例如,上午 9:00 - 下午 5:00 是开始时间,在这些时间之间以半小时为间隔返回的值是 9:30、10:00、10:30、11:00 等。

这是一些伪代码,因为我不确定我需要在这里插入什么(至少我尝试过的没有任何工作)......

for ($i = *start time*; $i = *end time*; $i += *time interval*) {
    echo $i;
}

对此有什么想法吗?

4

1 回答 1

4

离开我的头顶。您可以根据需要进行调整。

$start    = new DateTime('2013-08-14 09:00:00');
$end      = new DateTime('2013-08-14 17:00:00');
$interval = new DateInterval('PT30M');
$period   = new DatePeriod($start, $interval, $end);

foreach ($period as $dt)
{
    // do something
    echo $dt->format('H:iA');
}

链接

于 2013-08-14T14:02:10.847 回答