环境变量管理组件。

使用方式

import "github.com/gogf/gf/v2/os/genv"

接口文档

https://pkg.go.dev/github.com/gogf/gf/v2/os/genv

SetMap

func SetMap(m map[string]string) error

该方法用于批量设置环境变量。使用示例:

genv.SetMap(g.MapStrStr{
	"APPID":     "order",
	"THREAD":    "16",
	"ENDPOINTS": "127.0.0.1:6379",
})

GetWithCmd

func GetWithCmd(key string, def ...interface{}) *gvar.Var

该方法用于获取环境变量中指定的选项数值,如果该环境变量不存在时,则从命令行选项中读取。但是两者的名称规则会不一样。例如:genv.GetWithCmd("gf.debug")将会优先去读取GF_DEBUG环境变量的值,当不存在时则去命令行中的gf.debug选项。

需要注意的是参数命名转换规则:

  • 环境变量会将名称转换为大写,名称中的.字符转换_字符。
  • 命令行中会将名称转换为小写,名称中的_字符转换.字符。

All

func All() []string

该方法表示返回环境变量中的字符串,并且以`key=value`的形式返回。

Map

func Map() map[string]string

该方法表示返回环境变量中的字符串,并且以`map`的形式返回。

Get

func Get(key string, def ...interface{}) *gvar.Var

该方法用于创建返回一个泛型类型的环境变量,如果给定的key不存在则返回一个默认的泛型类型的环境变量。

Set

func Set(key, value string) error

该方法是通过存放keyvalue的环境变量,如果有报错则返回一个Error类型。

SetMap

func SetMap(m map[string]string) error

该方法通过map类型的参数存放环境变量。

Contains

func Contains(key string) bool

该方法通过检查环境变量中是否存在key

Remove

func Remove(key ...string) error

该方法可以删除一个或者多个环境变量。

Build

func Build(m map[string]string) []string

该方法将map的参数以数组的形式构建并且返回。