golangの時刻の扱いは他の言語に比べて癖があるので基本を備忘としてメモ
//現在UTC時刻取得
day := time.Now().UTC()
//UTC時刻フォーマットあり
fmt.Printf("%s\n", day.Format("2006-01-02 15:04:05"))
//※フォーマットでは使える文字が決まっているので注意 適当な文字では処理されない https://pkg.go.dev/time#pkg-constants
//UTC時刻フォーマットなし
fmt.Printf("%s\n", day)
//現在ローカル時刻取得
day = time.Now().Local()
//ローカル時刻フォーマットあり
fmt.Printf("%s\n", day.Format("2006-01-02 15:04:05"))
//※フォーマットでは使える文字が決まっているので注意 適当な文字では処理されない https://pkg.go.dev/time#pkg-constants
//ローカル時刻フォーマットなし
fmt.Printf("%s\n", day)
//時刻型を文字列に変換する
var strTempDate string
strTempDate = day.Format("2006-01-02 15:04:05")
fmt.Printf("%s\n", strTempDate)
//文字列(strTempDate)を時刻型に変換する
var timeTempDate time.Time
timeTempDate, _ = time.Parse("2006-01-02 15:04:05", strTempDate)
fmt.Printf("%s\n", timeTempDate)
fmt.Printf("%s\n", timeTempDate.Local())
//出力例
// 2022-01-09 07:37:20
// 2022-01-09 07:37:20.1249254 +0000 UTC
// 2022-01-09 16:37:21
// 2022-01-09 16:37:21.1224927 +0900 JST
// 2022-01-09 16:37:21
// 2022-01-09 16:37:21 +0000 UTC
// 2022-01-10 01:37:21 +0900 JST