我想将时间转换为四舍五入的时间。
因此我只想以秒为单位使用间隔。它适用于一刻钟和整小时。但不是几天。然后就乱了。但我不明白为什么
这是我的功能:
function formatToMySQLTime($sTime,$iInterval){
switch ($iInterval){
case 1: // 15 minutes;
$iDivider = 15 * 60;
break;
case 2: // 1 hour
$iDivider = 60 * 60;
break;
case 3: // 1 day
$iDivider = 60 * 60 * 24;
break;
}
$iRemainder = strtotime($sTime) % $iDivider;
$iRoundTime = strtotime($sTime) - $iRemainder;
$sTime = date('Y-m-d H:i:s', $iRoundTime);
return $sTime;
}
这是输出:
echo formatToMySQLTime('2013-10-21 03:23:00',1);
2013-10-21 03:15:00
echo formatToMySQLTime('2013-10-21 03:23:00',2);
2013-10-21 03:00:00
echo formatToMySQLTime('2013-10-21 03:23:00',3);
2013-10-21 02:00:00
第三个输出错误,应该是2013-10-21 00:00:00
. 我的错误是什么?