GO获取两个日期之间的天数差

1、实现

import (
	"time"
)

func GetDaysBetween2Date(format string, date1Str string, date2Str string) (int, error) {
	// 转化字符串为Time格式
	date1, err := time.ParseInLocation(format, date1Str, time.Local)
	if err != nil {
		return 0, err
	}
	// 转化字符串为Time格式
	date2, err := time.ParseInLocation(format, date2Str, time.Local)
	if err != nil {
		return 0, err
	}
	//计算相差天数
	return int(date1.Sub(date2).Hours() / 24), nil
}

format: 表示日期格式,比如"20060102","2006-01-02",注意GO里面,格式只能使用20060102这天的日期

date1Str:开始日期的字符串表示,格式需要与format一致

date2Str:结束日期的字符串表示,格式需要与format一致

2、示例

GetDaysBetween2Date("20060102", "20220610", "20220601")       //结果为9
GetDaysBetween2Date("2006-01-02", "2022-06-10", "2022-06-01") //结果为9