如何解决golang中“调用日期时缺少位置”的错误

我写了一个 golang 程序来生成不同位置的开始日期和结束日期


if month != "" && year != "" {

    var monthInt, _ = strconv.Atoi(month)

    var yearInt, _ = strconv.Atoi(year)

    timeZone, err := time.LoadLocation("America/Pheonix")

    if err != nil {

        fmt.Println(err)// nil

    }

    // currentLocation := time.Now().Location(timeZone) // when I use this it will works 

    // both are of same type 

    fmt.Println(reflect.TypeOf(timeZone))

    fmt.Println(reflect.TypeOf(time.UTC))

    firstOfMonth := time.Date(yearInt, time.Month(monthInt), 1, 0, 0, 0, 0, timeZone)

    onlyStartDate := strings.Split(firstOfMonth.Format("2006-01-02 00:00:00 -0000"), " ")

    lastOfMonth := firstOfMonth.AddDate(0, 1, -1).Format("2006-01-02 00:00:00 -0000")

    onlyLastDate := strings.Split(lastOfMonth, " ")

    merchantDb.GetProvidersOfTheMonth(onlyStartDate[0], onlyLastDate[0])

}

但是当我运行这段代码时,它会给我以下错误:-


时间:在调用 Date 时缺少位置


为什么会产生此错误以及我将如何解决此错误?


请任何建议!


慕妹3242003
浏览 108回答 1
1回答

MMMHUHU

应该是America/Phoenix,不是America/Pheonix。timeZone, _ := time.LoadLocation("America/Phoenix")
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go