日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)GoFrame教程:GoFrame配置管理-配置對象

我們推薦使用單例模式獲取配置管理對象。我們可以方便地通過?g.Cfg()?獲取默認的全局配置管理對象。同時,我們也可以通過?gcfg.Instance?包方法獲取配置管理對象單例。

使用g.Cfg

我們來看一個示例,演示如何讀取全局配置的信息。需要注意的是,全局配置是與框架相關(guān)的,因此統(tǒng)一使用?g.Cfg()?進行獲取。以下是一個默認的全局配置文件,包含了模板引擎的目錄配置以及?MySQL?數(shù)據(jù)庫集群(兩臺?master?)的配置。

示例配置:

viewpath: "/home/www/templates/"
database:
  default:
  - link: "mysql:root:12345678@tcp(127.0.0.1:3306)/test"
    role: "master"
  - link: "mysql:root:12345678@tcp(127.0.0.1:3306)/test"
    role: "slave"

示例代碼:

package main

import (
	"fmt"

	"github.com/GOgf/gf/v2/frame/g"
	"github.com/gogf/gf/v2/os/gctx"
)

func main() {
	var ctx = gctx.New()
	fmt.Println(g.Cfg().Get(ctx, "viewpath"))
	fmt.Println(g.Cfg().Get(ctx, "database.default.0.role"))
}

以上示例為讀取數(shù)據(jù)庫的第一個配置的?role?信息。運行后輸出:

/home/www/templates/
master

可以看到,我們可以通過?g.Cfg()?方法獲取一個全局的配置管理器單例對象。配置文件內(nèi)容可以通過英文“?.?”號進行層級訪問(數(shù)組默認從?0?開始),?pattern?參數(shù)?database.default.0.role?表示讀取?database?配置項中?default?數(shù)據(jù)庫集群中的第?0?項數(shù)據(jù)庫服務(wù)器的?role?數(shù)據(jù)。

使用gcfg.Instance

當然也可以獨立使用?gcfg?包,通過?Instance?方法獲取單例對象。

package main

import (
	"fmt"

	"github.com/gogf/gf/v2/os/gcfg"
	"github.com/gogf/gf/v2/os/gctx"
)

func main() {
	var ctx = gctx.New()
	fmt.Println(gcfg.Instance().Get(ctx, "viewpath"))
	fmt.Println(gcfg.Instance().Get(ctx, "database.default.0.role"))
}

自動檢索特性

單例對象在創(chuàng)建時會按照文件后綴?toml/yaml/yml/json/ini/xml?自動檢索配置文件。默認情況下會自動檢索配置文件?config.toml/yaml/yml/json/ini/xml?并緩存,配置文件在外部被修改時將會自動刷新緩存。

為方便多文件場景下的配置文件調(diào)用,簡便使用并提高開發(fā)效率,單例對象在創(chuàng)建時將會自動使用單例名稱進行文件檢索。例如:?g.Cfg("redis")?獲取到的單例對象將默認會自動檢索?redis.toml/yaml/yml/json/ini/xml?,如果檢索成功那么將該文件加載到內(nèi)存緩存中,下一次將會直接從內(nèi)存中讀??;當該文件不存在時,則使用默認的配置文件(?config.toml?)。


網(wǎng)站標題:創(chuàng)新互聯(lián)GoFrame教程:GoFrame配置管理-配置對象
轉(zhuǎn)載源于:http://www.5511xx.com/article/coohhjo.html