有2次$dayFrom = 10:00:00;
和$dayTo = 12:00:00
我希望在15分钟的持续时间内将其除以。
预期结果
10:00:00, 10:15:00, 10:30:00, 10:45:00 and so on
寻求帮助
答案 0 :(得分:1)
$timeArray = array();
$startTime = new \DateTime("2010-01-01 10:00:00");
$endTime = new \DateTime("2010-01-01 12:00:00");
while($startTime < $endTime) {
$timeArray[] = $startTime->format('H:i:s');
$startTime->add(new \DateInterval('PT 15 M'));
}
echo implode(",",$timeArray);
您可以使用此代码。它会对你有帮助:))
答案 1 :(得分:1)
你也可以试试这个 -
$dayFrom = strtotime('10:00:00');
$dayTo = strtotime('12:00:00');
while($dayFrom <= $dayTo) {
echo date('H:i:s', $dayFrom);
$dayFrom= strtotime('+ 15 MINUTES', $dayFrom);
}
<强>输出强>
10:00:00
10:15:00
10:30:00
10:45:00
11:00:00
11:15:00
11:30:00
11:45:00
12:00:00
答案 2 :(得分:1)
主题的另一个变体 - 使用DateInterval。
$df='H:i';
$timezone=new DateTimeZone('Europe/London');
$interval=new DateInterval('PT15M');
$ts=date( 'Y-m-d H:i:s', strtotime('10.00am') );
$tf=date( 'Y-m-d H:i:s', strtotime('12.00pm') );
$start=new DateTime( $ts, $timezone );
$end=new DateTime( $tf, $timezone );
while( $start->add( $interval ) <= $end ){
echo $start->format( $df ).'<br />';
}
答案 3 :(得分:0)
$dayFrom = "10:00:00";
$dayTo = "12:00:00";
while($endTime<$dayTo){
$endTime = strtotime($dayFrom) + 900;
echo date('h:i:s', $endTime);
}
试试这个。