+
Skip to content

eatmoreapple/env

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

env

Example

package main

import (
	"fmt"
	"github.com/eatmoreapple/env"
	"log"
	"os"
)

func main() {
	if err := os.Setenv("hello", "world"); err != nil {
		log.Fatal(err)
	}
	if err := os.Setenv("bool", "true"); err != nil {
		log.Fatal(err)
	}
	fmt.Println(env.Name("hello").String()) // world

	fmt.Println(env.Name("bool").Bool()) // true

	fmt.Println(env.Name("undefined").StringOrElse("undefined")) // undefined

	var entity struct {
		Hello string `env:"hello"`
		Bool  bool   `env:"bool"`
	}
	if err := env.Decode(&entity); err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%+v", entity) // {Hello:world Bool:true}
	
	
	var defaultEntity struct{
		Value string `env:"NOT_FOUND" default:"default"`
    }
	if err := env.Decode(&defaultEntity); err != nil {
        log.Fatal(err)
    }
	
	fmt.Printf("%+v", defaultEntity) // {Value:default}
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载