首页  >  文章  >  后端开发  >  如何在 Go 中获取本地一天的开始:截断是正确的工具吗?

如何在 Go 中获取本地一天的开始:截断是正确的工具吗?

Barbara Streisand
Barbara Streisand原创
2024-11-11 07:20:03654浏览

How to Get the Local Start of the Day in Go: Is Truncate the Right Tool?

获取本地今日开始

目标是获取本地当天开始时间对象,确保包含正确的时区。

利用自定义函数

代码片段中提出的初始解决方案根据年、月和日组件重建日期。然而,更有效的方法是利用 time 包提供的 Date 函数。

func Bod(t time.Time) time.Time {
    return time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, t.Location())
}

截断方法的缺陷

虽然接受的答案建议使用Truncate 函数,它无法满足我们的要求。此函数按照 UTC 时间运行,并错误地假设固定的 24 小时一天,忽略了在芝加哥观察到的潜在偏差。

以上是如何在 Go 中获取本地一天的开始:截断是正确的工具吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn