我需要在当前时间上增加15分钟,直到一天的midnight.which以下面的格式显示
11:15am
11:30am
11:45am不会是这样的,
11:25am
11:40am
11:55am我的代码是
$start =strtotime(date("d-m-Y h:i:s"));//strtotime('6:00am');
//echo $start;
//$end =strtotime('midnight');
$end = strtotime('12:00');//
$range = array();
while ($start <= $end)
{
echo date('h:ia',$start )."</br>";
$start = strtotime('+15 minutes',$start);
}以上代码的结果,
11:28am
11:43am
11:58am问题1:
怎样才能给出今天午夜那样的结束时间?
当我尝试strtotime('midnight')时,它返回空数据。
问题2:
如何将圆角时间显示到最近的四分之一?
发布于 2018-04-17 06:03:45
你可以使用24:00或'tomorrow midnight'来获得下一个午夜。您的代码使用12:00,即“今天中午”。
$min = round(date("i") / 15) * 15;
$start = strtotime(date("Y-m-d H:$min:00"));
$end = strtotime('24:00');
$range = array();
while ($start <= $end)
{
echo date('h:ia',$start )."</br>";
$start = strtotime('+15 minutes',$start);
}将产出:
08:15am
08:30am
...
11:30pm
11:45pm
12:00am如果您不想包括“上午12:00”,可以将<=更改为<
while ($start < $end)发布于 2018-04-17 06:13:00
问题是,您的代码必须完全由11:00启动才能使after 15 mins成为11:15。
您可以将开始时间创建为11:00:00,以正确设置时间(演示):
$start =strtotime(date("h:00"));
$end = strtotime('12:00');
$range = array();
while ($start <= $end)
{
$range[] = date('h:ia',$start );
$start = strtotime('+15 minutes',$start);
}
var_dump($range);https://stackoverflow.com/questions/49870809
复制相似问题