Golang 中的日期和时间 

包名 time

time.Now()
当前时间戳

time.Now().Unix()
time.Now().Unix()

时间格式化string

time.Now().Format("2006-01-02 15:04:05")
time.Now().Format("2006-01-02")
time.Now().Format("2006-01-02")

时间戳格式化到string

str_time := time.Unix(1389058332, 0).Format("2006-01-02 15:04:05")

string 转化到 时间


以上是时间转化 接下来是总会用到的特殊事件

现在时间 time.Now()

今天00:00:00

now := time.Now()

year, month, day := now.Date()

today_str := fmt.Sprintf("%d-%d-%d 00:00:00", year, month, day)

today_time := time.Date(year, month, day, 0, 0, 0, 0, time.Local)

明天00:00:00

tomorrow := time.Now().Add(24*time.Hour)

year, month, day := now.Date()

tomorrow_str := fmt.Sprintf("%d-%d-%d 00:00:00", year, month, day)

tomorrow_time := time.Date(year, month, day, 0, 0, 0, 0, time.Local)

时间比较

可以转化为时间戳比较

也可以用before 等来比较