将格式化的时间值四舍五入到最接近的半小时

问题描述

| 我需要0:30到0:59向下舍入到0:30。 我需要0:00到0:29才能舍入到0:30。 示例:08:56将舍入到08:30,其中09:00和09:01将需要舍入到09:30。 秒应省略或四舍五入为:00     

解决方法

您为什么不这样做:
$hour = date(\'H\');
$minute = (date(\'i\')>30)?\'30\':\'00\';
echo \"$hour:$minute\";
演示 更新 我只是意识到,您一直都要求四舍五入为1:
$hour = date(\'H\');
$minute = \'30\'; //always 30
echo \"$hour:$minute\";
    ,
you have to do: 

$hour = date(\'H\'); 
$minute = date(\'i\');
$minute = ($minute < 30 || $minute > 30) ? 30 : $minute;
    ,接下来的选择是我对真实回合的解决方案:
//Round Down
date(\'H:i\',floor(time() / (15 * 60)) * (15 * 60))

//Round Up/Down
date(\'H:i\',round(time() / (15 * 60)) * (15 * 60))

//Round Up
date(\'H:i\',ceil(time() / (15 * 60)) * (15 * 60))
将ѭ5替换为您需要的时间,并将
15
替换为您想要四舍五入的分钟数。 例:
$currentTime = time();
echo(\'Current Time: \' . date(\'H:i\',$currentTime) . \'<br>Rounded Up 15 Minutes time: \' . date(\'H:i\',ceil($currentTime / (15 * 60)) * (15 * 60)));
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...