php – 开始和结束时间,分为1小时段

前端之家收集整理的这篇文章主要介绍了php – 开始和结束时间,分为1小时段前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个时间戳格式的开始和结束时间.我想把它们分成1小时的时间段.
$t1 = strtotime('2010-05-06 12:00:00');
$t2 = strtotime('2010-05-06 18:00:00');

$timeslots = array();

while ($t1 < $t2) {
$t1 = $t1 + 3600;
$timeslots[] = $t1;
}

foreach ( $timeslots as $slot ) {
echo date("Y-m-d H:i:s",$slot) . '<br/>';
}

这是最有效的方法,还是有更好,更通用的方法来做到这一点?

偶尔尝试使用不同长度时间段的其他数字时会出现致命错误:允许的内存大小耗尽,这让我认为它不是很有效.虽然现在似乎没有发生……

(我正在建立一个预订系统)

你有没有尝试过
while ($t1 < $t2) {
   $t1 = strtotime('+1 hour',$t1);
   $timeslots[] = date('Y-m-d H:i:s',$t1);
}

foreach ( $timeslots as $slot ) {
   echo $slot . '<br/>';
}

有点相同但更清洁.正如所说,strtotime将处理像闰年这样的日期变化.你的PHP内存限制是多少?可能太低了.

猜你在找的PHP相关文章