Home > Article > Backend Development > How to create a date range in YYYY-MM-DD format from start to end in Golang?
Assume our input is start_date=2022-01-01
and end_date=2022-01-05
. How do I get input like this:
2022-01-01 2022-01-02 2022-01-03 2022-01-04
I can use time.parse
to parse the start and end and use .sub
to get the number of days in between, then iterate over the range and create the string date.
I was wondering if there is a way to create a date range in go
or a better solution?
You can use:
const ( layout = "2006-01-02" ) func main() { startdate, _ := time.parse(layout, "2022-01-01") enddate, _ := time.parse(layout, "2022-01-05") for date := startdate; date.before(enddate); date = date.adddate(0, 0, 1) { fmt.println(date.format(layout)) } }
This will give you:
2022-01-01 2022-01-02 2022-01-03 2022-01-04
The above is the detailed content of How to create a date range in YYYY-MM-DD format from start to end in Golang?. For more information, please follow other related articles on the PHP Chinese website!