Go-获取今天、昨天、前天以及指定时间范围的格式化日期的开始和结束的时间戳

水深无声 2023-01-23 14:49 71阅读 0赞
  1. func GetHourTime(timeType, start, end string) (startTime, endTime int64) {
  2. switch timeType {
  3. case "1": // 今天
  4. dateNow := time.Now()
  5. startTime = time.Date(dateNow.Year(), dateNow.Month(), dateNow.Day(), 0, 0, 0, 0, dateNow.Location()).Unix()
  6. endTime = time.Date(dateNow.Year(), dateNow.Month(), dateNow.Day(), 23, 59, 59, 0, dateNow.Location()).Unix()
  7. case "2": // 昨天
  8. dateNow := time.Now().AddDate(0, 0, -1)
  9. startTime = time.Date(dateNow.Year(), dateNow.Month(), dateNow.Day(), 0, 0, 0, 0, dateNow.Location()).Unix()
  10. endTime = time.Date(dateNow.Year(), dateNow.Month(), dateNow.Day(), 23, 59, 59, 0, dateNow.Location()).Unix()
  11. case "3": // 前天
  12. dateNow := time.Now().AddDate(0, 0, -2)
  13. startTime = time.Date(dateNow.Year(), dateNow.Month(), dateNow.Day(), 0, 0, 0, 0, dateNow.Location()).Unix()
  14. endTime = time.Date(dateNow.Year(), dateNow.Month(), dateNow.Day(), 23, 59, 59, 0, dateNow.Location()).Unix()
  15. case "4": // 指定日期范围
  16. dateNow := time.Now()
  17. startUnix, _ := time.ParseInLocation("2006-01-02 15:04:05", start, dateNow.Location())
  18. endUnix, _ := time.ParseInLocation("2006-01-02 15:04:05", end, dateNow.Location())
  19. startTime = time.Date(startUnix.Year(), startUnix.Month(), startUnix.Day(), 0, 0, 0, 0, startUnix.Location()).Unix()
  20. endTime = time.Date(endUnix.Year(), endUnix.Month(), endUnix.Day(), 23, 59, 59, 0, endUnix.Location()).Unix()
  21. }
  22. return
  23. }

发表评论

表情:
评论列表 (有 0 条评论,71人围观)

还没有评论,来说两句吧...

相关阅读