我正在编写一个抓取网站报价的抓取工具,这些报价有结束日期。一个这样的网站提供每周日到期的优惠。我已经阅读了 golang 时间文档,但仍然不明白如何完成我在 PHP 中发现的等效性并且非常简单。$endDate = strtotime('this Sunday, 23:59:59');有没有 golang 的方法来做到这一点?
1 回答
慕妹3146593
TA贡献1820条经验 获得超9个赞
使用Go 标准库时间包在 Go 中编写一个函数。例如,
package main
import (
"fmt"
"time"
)
func endDate(t time.Time, wd time.Weekday) time.Time {
next := int((wd - t.Weekday() + 7) % 7)
y, m, d := t.Date()
return time.Date(y, m, d+next+1, 0, 0, 0, -1, t.Location())
}
func main() {
now := time.Now().Round(0)
fmt.Println(now, now.Weekday())
end := endDate(now, time.Sunday)
fmt.Println(end, end.Weekday())
}
输出:
2018-11-08 05:25:01.104445722 -0500 EST Thursday 2018-11-11 23:59:59.999999999 -0500 EST Sunday
- 1 回答
- 0 关注
- 135 浏览
添加回答
举报
0/150
提交
取消