env.go 649 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package env
  2. import (
  3. "os"
  4. "strconv"
  5. "strings"
  6. )
  7. func Get(name string, val string) string {
  8. value := strings.TrimSpace(os.Getenv(name))
  9. if value == "" {
  10. return val
  11. } else {
  12. return value
  13. }
  14. }
  15. func Integer(name string, val int64) int64 {
  16. value := Get(name, "")
  17. if n, err := strconv.ParseInt(value, 10, 64); err == nil {
  18. return n
  19. } else {
  20. return val
  21. }
  22. }
  23. func Float(name string, val float64) float64 {
  24. value := Get(name, "")
  25. if n, err := strconv.ParseFloat(value, 64); err == nil {
  26. return n
  27. } else {
  28. return val
  29. }
  30. }
  31. func Set(name string, val string) {
  32. value := os.Getenv(name)
  33. if value == "" {
  34. os.Setenv(name, val)
  35. }
  36. }