Golang 相当于 strtotime("这个星期天,23:59:59")

我正在编写一个抓取网站报价的抓取工具,这些报价有结束日期。一个这样的网站提供每周日到期的优惠。我已经阅读了 golang 时间文档,但仍然不明白如何完成我在 PHP 中发现的等效性并且非常简单。

$endDate = strtotime('this Sunday, 23:59:59');

有没有 golang 的方法来做到这一点?


慕沐林林
浏览 136回答 1
1回答

慕妹3146593

使用Go 标准库时间包在 Go 中编写一个函数。例如,package mainimport (    "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
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go