strings.go 746 B

1234567891011121314151617181920212223242526272829303132
  1. package utils
  2. import "time"
  3. // IsNonEmptyString 判断字符串指针不为 nil 且不为空
  4. func IsNonEmptyString(s *string) bool {
  5. return s != nil && *s != ""
  6. }
  7. // UnixTimeToBeijing 将 Unix 时间戳转换为北京时间字符串
  8. func UnixTimeToBeijing(i any) *string {
  9. // 断言输入为 int64 类型
  10. unixTime, ok := i.(int64)
  11. if !ok {
  12. return nil
  13. }
  14. // 当传入的时间为0值时,返回固定字符串"---"
  15. if unixTime == 0 {
  16. defaultTime := "--"
  17. return &defaultTime
  18. }
  19. // 转换为北京时间(UTC+8)
  20. beijingTime := time.Unix(unixTime, 0).In(time.FixedZone("CST", 8*3600))
  21. // 格式化时间字符串
  22. formattedTime := beijingTime.Format("2006-01-02 15:04:05")
  23. // 返回字符串指针
  24. return &formattedTime
  25. }