处理时间戳时,通常需要将时间值四舍五入到特定间隔。例如,您可能需要将时间四舍五入到最接近的 15 分钟,尤其是在使用日程安排或预约系统时。
为了满足这一需求,存在一个多功能函数,可以直接对时间进行四舍五入DateTime 对象精确到 X 分钟。
以下代码片段展示了上述内容函数:
DateTime RoundUp(DateTime dt, TimeSpan d) { return new DateTime((dt.Ticks + d.Ticks - 1) / d.Ticks * d.Ticks, dt.Kind); }
要使用此函数,只需提供您想要舍入的日期时间和舍入的时间间隔 (TimeSpan)。例如,要四舍五入到最接近的 15 分钟:
var dt1 = RoundUp(DateTime.Parse("2011-08-11 16:59"), TimeSpan.FromMinutes(15)); // dt1 == {11/08/2011 17:00:00}
这会将时间四舍五入到最接近的 15 分钟间隔,即上例中的 17:00。
var dt2 = RoundUp(DateTime.Parse("2011-08-11 17:11"), TimeSpan.FromMinutes(30)); // dt2 == {11/08/2011 17:30:00}
var dt3 = RoundUp(DateTime.Parse("2011-08-11 18:05"), TimeSpan.FromMinutes(60)); // dt3 == {11/08/2011 19:00:00}
以上是如何将 DateTime 对象四舍五入到最接近的 X 分钟?的详细内容。更多信息请关注PHP中文网其他相关文章!