2 Star 0 Fork 0

TeamsHub/backend-gopkg

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
time.go 1.57 KB
一键复制 编辑 原始数据 按行查看 历史
HCY 提交于 2024-05-13 14:32 . [REV] sql 台账
package util
import "time"
// 获取传入的时间所在月份的第一天,即某月第一天的0点。如传入time.Now(), 返回当前月份的第一天0点时间。
func GetFirstDateOfMonth(d time.Time) time.Time {
d = d.AddDate(0, 0, -d.Day()+1)
return GetZeroTime(d)
}
// 获取传入的时间所在月份的最后一天,即某月最后一天的0点。如传入time.Now(), 返回当前月份的最后一天0点时间。
func GetLastDateOfMonth(d time.Time) time.Time {
// 获取下个月的第一天
return time.Date(d.Year(), d.Month()+1, 1, 0, 0, 0, 0, d.Location()).Add(-time.Second)
}
// 获取某一天的0点时间
func GetZeroTime(d time.Time) time.Time {
return time.Date(d.Year(), d.Month(), d.Day(), 0, 0, 0, 0, d.Location())
}
// 获取某一天的23:59:59点时间
func Get24Time(d time.Time) time.Time {
return time.Date(d.Year(), d.Month(), d.Day(), 23, 59, 59, 0, d.Location())
}
// 获取当年的最后一天
func GetFirstDateOfYear(d time.Time) time.Time {
return time.Date(d.Year(), time.January, 1, 0, 0, 0, 0, d.Location())
}
// 获取当年的最后一天
func GetLastDateOfYear(d time.Time) time.Time {
// 获取下一年的第一天
nextYear := d.Year() + 1
firstDayOfNextYear := time.Date(nextYear, time.January, 1, 0, 0, 0, 0, d.Location())
// 减去一天得到本年的最后一天
return firstDayOfNextYear.Add(-time.Second)
}
/* 时间格式字符串转换 */
func TimeStringToGoTime(tm string) time.Time {
t, err := time.ParseInLocation("2006-01-02 15:04:05", tm, time.Local)
if nil == err && !t.IsZero() {
return t
}
return time.Time{}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/wuzheng0709/backend-gopkg.git
git@gitee.com:wuzheng0709/backend-gopkg.git
wuzheng0709
backend-gopkg
backend-gopkg
v1.3.12

搜索帮助