env

package
v1.1.13 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package env env包提供环境变量的操作同时支持dotenv

使用NewEnvLoader()创建一个环境加载器实例 获取初始类型string的环境变量

e := NewEnvLoader() e.Get("KEY").Raw() 自动转换为Int类型 e.Get("KEY").Int()

使用dotenv来加载文件,默认会读取.env配置文件 env.Load() // 传入file1 file2

支持以开发模式的方式自动加载,根据环境变量GO_DEVMODE配置 env.AutoLoad()

Package env

Index

Constants

View Source
const (
	DEFAULT    = ".env"
	DEV        = "development"
	PROD       = "production"
	DEVFILE    = ".env.dev"
	PRODFILE   = ".env.prod"
	GO_DEVMODE = "GO_DEVMODE"
)

Variables

This section is empty.

Functions

func AutoLoad added in v1.1.10

func AutoLoad()

AutoLoad 默认读取当前目录下的.env 在不同开发模式时自动匹配 内置了dev prod模式分别会匹配.env.dev和.env.prod 根据当前环境变量GO_DEVMODE判断

func GetEnv

func GetEnv(key string) string

GetEnv 获取环境变量

func GetEnvs

func GetEnvs(keys ...string) []string

GetEnvs 获取多个环境变量

func IsEnvEqual

func IsEnvEqual(env, dst string) bool

IsEnvEqual 比较环境变量

func Load added in v1.1.10

func Load(files ...string) error

Load 默认读取当前目录下的.env

func Marshal added in v1.1.10

func Marshal(envs map[string]string) (string, error)

func Overload added in v1.1.10

func Overload(files ...string) error

Overload 覆写已经存在的环境变量

func Read added in v1.1.10

func Read() (map[string]string, error)

Read 尝试从环境变量中读取合并的环境变量到Map var myEnv map[string]string myEnv, err := Read()

var1 := myEnv["Var1"]

func SetEnvContext

func SetEnvContext(c context.Context, key, val string) context.Context

SetEnvContext 设置上下文环境变量

func Unmarshal added in v1.1.10

func Unmarshal(s string) (map[string]string, error)

Unmarshal 尝试解析字符串到环境变量Map Unmarshal("KEY=VALUE")

func UnmarshalBytes added in v1.1.10

func UnmarshalBytes(b []byte) (map[string]string, error)

func Write added in v1.1.10

func Write(envs map[string]string, file string) error

Write 存储Map到文件中

Types

type EnvLoader added in v1.0.4

type EnvLoader struct {
	KeepRawValue bool // 断言失败时返回原始值 为false时raw永远为原始值的空值
	// contains filtered or unexported fields
}

func NewEnvLoader added in v1.1.10

func NewEnvLoader() EnvLoader

NewEnvLoader 返回一个环境变量加载器示例

func (*EnvLoader) Bool added in v1.0.4

func (e *EnvLoader) Bool() bool

func (*EnvLoader) Float32 added in v1.0.4

func (e *EnvLoader) Float32() float32

func (*EnvLoader) Float64 added in v1.0.4

func (e *EnvLoader) Float64() float64

func (*EnvLoader) Get added in v1.0.4

func (e *EnvLoader) Get(key string) *EnvLoader

Get 加载环境变量

func (*EnvLoader) GetValue added in v1.0.4

func (e *EnvLoader) GetValue(key string) string

func (*EnvLoader) Int added in v1.0.4

func (e *EnvLoader) Int() int

func (*EnvLoader) Int16 added in v1.0.4

func (e *EnvLoader) Int16() int16

func (*EnvLoader) Int32 added in v1.0.4

func (e *EnvLoader) Int32() int32

func (*EnvLoader) Int64 added in v1.0.4

func (e *EnvLoader) Int64() int64

func (*EnvLoader) Int8 added in v1.0.4

func (e *EnvLoader) Int8() int8

func (*EnvLoader) Interface added in v1.0.4

func (e *EnvLoader) Interface() interface{}

func (*EnvLoader) MustBool added in v1.0.7

func (e *EnvLoader) MustBool(def bool) bool

func (*EnvLoader) MustFloat32 added in v1.0.7

func (e *EnvLoader) MustFloat32(def float32) float32

func (*EnvLoader) MustFloat64 added in v1.0.7

func (e *EnvLoader) MustFloat64(def float64) float64

func (*EnvLoader) MustInt added in v1.0.7

func (e *EnvLoader) MustInt(def int) int

func (*EnvLoader) MustInt16 added in v1.0.7

func (e *EnvLoader) MustInt16(def int16) int16

func (*EnvLoader) MustInt32 added in v1.0.7

func (e *EnvLoader) MustInt32(def int32) int32

func (*EnvLoader) MustInt64 added in v1.0.7

func (e *EnvLoader) MustInt64(def int64) int64

func (*EnvLoader) MustInt8 added in v1.0.7

func (e *EnvLoader) MustInt8(def int8) int8

func (*EnvLoader) MustString added in v1.1.5

func (e *EnvLoader) MustString(def string) string

func (*EnvLoader) Raw added in v1.0.4

func (e *EnvLoader) Raw() string

Raw 返回原始值

func (*EnvLoader) Time added in v1.0.4

func (e *EnvLoader) Time() time.Time

Time 转换时间戳

Directories

Path Synopsis
Package autoload 旁载后自动加载.env文件
Package autoload 旁载后自动加载.env文件

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL