Browse Source

增加具体时间转年龄方法

master v0.8.3
loshiqi 1 day ago
parent
commit
d15a0b9571
1 changed files with 25 additions and 0 deletions
  1. +25
    -0
      time.go

+ 25
- 0
time.go View File

@ -99,3 +99,28 @@ func DatetimeToUnix(value string) int64 {
return reserveTime.Unix()
}
// 具体时间戳转年龄
func CalculateAge(birthTimestamp int64) int {
// 将时间戳转换为 time.Time 对象
birthTime := time.Unix(birthTimestamp, 0)
currentTime := time.Now()
// 获取出生和当前的年、月、日
birthYear := birthTime.Year()
currentYear := currentTime.Year()
birthMonth := int(birthTime.Month())
currentMonth := int(currentTime.Month())
birthDay := birthTime.Day()
currentDay := currentTime.Day()
// 计算初步年龄
age := currentYear - birthYear
// 如果当前月份小于出生月份,或者月份相同但当前日期小于出生日期,则年龄减1
if currentMonth < birthMonth || (currentMonth == birthMonth && currentDay < birthDay) {
age--
}
return age
}

Loading…
Cancel
Save