1 package main 2 3 import ( 4 "fmt" 5 "time" 6 ) 7 8 func main() { 9 10 layout := "2006-01-02 15:04:05" 11 12 local, _ := time.LoadLocation("Local") 13 t1, _ := time.ParseInLocation(layout, "2018-08-16 19:36:40", local) 14 15 fmt.Println("no.unix=", time.Now().UTC().Unix(), "\nt1.utc =", t1.UTC().Unix(), "\nt1.unix=", t1.Unix()) 16 17 for { 18 if true == TriggerCheckSsp() { 19 fmt.Println("----!!!!!---") 20 break 21 } 22 } 23 24 } 25 26 func TriggerCheckSsp() bool { 27 fmt.Println("----") 28 layout := "2006-01-02 15:04:05" 29 30 local, _ := time.LoadLocation("Local") 31 t, _ := time.ParseInLocation(layout, "2018-08-17 7:49:50", local) 32 33 fmt.Println("---", time.Now().UTC().Unix(), "--", t.UTC().Unix(), "---", time.Now().Unix()) 34 if time.Now().UTC().Unix() >= t.UTC().Unix() { 35 return true 36 } 37 return false 38 }
使用 time.LoadLocation 和 time.ParseInLocation 可以得到本地时间而不是UTC时间
time.Now().UTC().Unix() 和 time.Now().Unix() 得到的时间是一样的,说明unix时间戳不区分是否是UTC,得到的结果是一样的。