I18N
支持
模板引擎支持 i18n
特性,可以通过给上下文注入特定的 i18n
语言来实现不同的请求/页面使用不同的 i18n
语言渲染。例如:
package main
import (
"context"
"fmt"
"github.com/gogf/gf/frame/g"
"github.com/gogf/gf/i18n/gi18n"
)
func main() {
var (
ctxCN = gi18n.WithLanguage(context.TODO(), "zh-CN")
ctxJa = gi18n.WithLanguage(context.TODO(), "ja")
content = `{{.name}} says "a{#hello}{#world}!"`
)
result1, _ := g.View().ParseContent(ctxCN, content, g.Map{
"name": "john",
})
fmt.Println(result1)
result2, _ := g.View().ParseContent(ctxJa, content, g.Map{
"name": "john",
})
fmt.Println(result2)
}
执行后,输出结果为:(保证当前运行目录带有 i18n
转译配置文件)
john says "你好世界!"
john says "こんにちは世界!"