我开发了一个函数来在用户生成的时间范围内获得相等的时间间隔。
$start = strtotime("12:00"); //start at...
$end = strtotime("18:00"); //end at...
$timeframe = $end - $start; //time-frame
$intervals = 3; //number of intervals within time-frame
$interval_time = $timeframe/$intervals; //time of each interval
for($i = 0, $start;
$i < $intervals;
$i++, $start = strtotime("+$interval_time seconds", $start)) //increment time
{
$new_time = date('H:i:s a', $start);
echo "$new_time \n";
}
上面的代码输出
12:00:00 pm 14:00:00 pm 16:00:00 pm
我可以使用哪些代码来划分每个间隔并获得中间值?例如,从上面的代码中获取
13:00:00 pm 15:00:00 pm 17:00:00 pm
请建议:)
答案 0 :(得分:1)
将您的for
循环替换为:
$half_interval = $interval_time / 2;
$mid = $start + $half_interval;
for ( $i = 1; $i < $intervals; $i ++) {
echo date('H:i:s a', $mid) . " \n";
$mid += $interval_time;
}
echo date('H:i:s a', $mid) . " \n";
不可否认,这是一种简单的方法。我确信可以改进,但留给读者作为练习! ; - )