tools.go 780 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package utils
  2. import (
  3. "net"
  4. "time"
  5. )
  6. //服务端ip
  7. func GetLocalIP() (ip string, err error) {
  8. addrs, err := net.InterfaceAddrs()
  9. if err != nil {
  10. return
  11. }
  12. for _, addr := range addrs {
  13. ipAddr, ok := addr.(*net.IPNet)
  14. if !ok {
  15. continue
  16. }
  17. if ipAddr.IP.IsLoopback() {
  18. continue
  19. }
  20. if !ipAddr.IP.IsGlobalUnicast() {
  21. continue
  22. }
  23. return ipAddr.IP.String(), nil
  24. }
  25. return
  26. }
  27. //获取相差时间
  28. func GetHourDiffer(startTime, endTime string) int64 {
  29. var hour int64
  30. t1, err := time.ParseInLocation("2006-01-02 15:04:05", startTime, time.Local)
  31. t2, err := time.ParseInLocation("2006-01-02 15:04:05", endTime, time.Local)
  32. if err == nil && t1.Before(t2) {
  33. diff := t2.Unix() - t1.Unix() //
  34. hour = diff / 3600
  35. return hour
  36. } else {
  37. return hour
  38. }
  39. }