// 计算时间差,并以"XXd XXh XXm XXs"返回
func FriendyTimeFormat(TimeCreate time.Time, TimeEnd time.Time) string {
SubTime := int(TimeEnd.Sub(TimeCreate).Seconds())
fmt.Printf("%d",SubTime)
fmt.Println("")
// 秒
if SubTime < 60 {
return fmt.Sprintf("%ds", SubTime)
}
// 分钟
if SubTime < 60*60 {
minute := int(math.Floor(float64(SubTime / 60)))
second := SubTime % 60
return fmt.Sprintf("%dm %ds", minute, second)
}
// 小时
if SubTime < 60*60*24 {
hour := int(math.Floor(float64(SubTime / (60 * 60))))
tail := SubTime % (60 * 60)
minute := int(math.Floor(float64(tail / 60)))
second := tail % 60
return fmt.Sprintf("%dh %dm %ds", hour, minute, second)
}
// 天
day := int(math.Floor(float64(SubTime / (60 * 60 * 24))))
tail := SubTime % (60 * 60 * 24)
hour := int(math.Floor(float64(tail / (60 * 60))))
tail = SubTime % (60 * 60)
minute := int(math.Floor(float64(tail / 60)))
second := tail % 60
return fmt.Sprintf("%dd %dh %dm %ds", day, hour, minute, second)
}
如果能帮助到你点个赞哟!