處理時間戳時,通常需要將時間值四捨五入到特定間隔。例如,您可能需要將時間四捨五入到最接近的 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中文網其他相關文章!