【问题标题】:golang action on specific days of the week (ie. every Friday)一周中特定日期的 golang 操作(即每个星期五)
【发布时间】:2015-08-18 03:15:49
【问题描述】:

我需要在 2015 年 8 月 17 日到 2015 年 10 月 14 日之间的每个星期天之间获取一周中的特定日期。

    onDate, err := time.Parse(dateFormat, startDate)
    if err != nil {
        logr.Println(err)
    }

    offDate, err := time.Parse(dateFormat, stopDate)
    if err != nil {
        logr.Println(err)
    }

    weekday := onDate.Weekday()

    getDay := int(weekday)

    a := onDate.YearDay()
    b := offDate.YearDay()

    var date string
    var z time.Time

// Sundaytime1 is entered in the browser and will always be the same
    if sundayTime1 != "" && getDay == 0 {
        for a <= b {
            z := onDate.AddDate(0, 0, 7)
            date := time.Parse(dateFormat, z)

            fmt.Println(onDate)
            _, err = que.Exec(studyID, msgid, date, sundayTime1, 0, 0)
            if err != nil {
                fmt.Println(err)
            }
            fmt.Println("I'm a Sunday!")
            a = a + 7

        }
    }

这确实增加了一天,但它只做一次,所以它会重复返回2015-08-23 00:00:00 +0000 UTC。我似乎无法让它只返回2015-08-23,但它只在这段时间之间的每个星期天执行一个数据库条目。但它的日期是错误的,它不应该包括时间。缺点是我在一周的每个可能的开始日都有一个。有没有更好的方法来处理这个问题以及我如何在没有时间的情况下只得到2015-08-23

【问题讨论】:

    标签: mysql time go


    【解决方案1】:

    这可能对你有用:http://play.golang.org/p/UGnV8kPrA3

    当您及时处理实例时,结束日期在语义上是时间实例2015-10-14T00:00:00 + 1 天之前的日期

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-25
      • 2017-06-05
      • 2014-07-24
      相关资源
      最近更新 更多