Golang 读取 Laravel 项目的 .env 配置文件

文章目录

    例如,我的 Laravel 项目中包含了一些 Golang Gin 的服务接口,我想用 Golang 读取 Laravel 的 .env 配置文件中的 mysql 数据库账号和密码。

    发现一个不错的库 GoDotEnv 可以方便的读取并解析 .env 配置文件。

    GoDotEnv

    https://github.com/joho/godotenv

    代码示例

    package main
    
    import (
    	"github.com/joho/godotenv"
    	"log"
    	"os"
    )
    
    func main() {
    	err := godotenv.Load("../.env")
    	if err != nil {
    		log.Fatal("Error loading .env file")
    	}
    	db_database := os.Getenv("DB_DATABASE")
    	db_username := os.Getenv("DB_USERNAME")
    	log.Println("DATABASE: ", db_database)
    	log.Println("USERNAME: ", db_username)
    }
    

    注意:

    godotenv.Load 如果不指定参数,则默认读取当前目录下的 .env 文件。

    而我的 Laravel .env 配置文件在 golang 项目代码的上一层目录,所以需要指定文件路径。

    运行结果

    $ go run main.go
    2019/10/20 14:44:09 DATABASE:  sunzhongwei_com
    2019/10/20 14:44:09 USERNAME:  sunzhongwei
    

    关于作者 🌱

    我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊,或者关注我的个人公众号“大象工具”, 查看更多联系方式