1234567891011121314151617181920212223242526272829303132333435 |
- // Copyright GoFrame Author(https://goframe.org). All Rights Reserved.
- //
- // This Source Code Form is subject to the terms of the MIT License.
- // If a copy of the MIT was not distributed with this file,
- // You can obtain one at https://github.com/gogf/gf.
- // Package gi18n implements internationalization and localization.
- package gi18n
- import "context"
- const (
- ctxLanguage = "I18nLanguage"
- )
- // WithLanguage append language setting to the context and returns a new context.
- func WithLanguage(ctx context.Context, language string) context.Context {
- if ctx == nil {
- ctx = context.TODO()
- }
- return context.WithValue(ctx, ctxLanguage, language)
- }
- // LanguageFromCtx retrieves and returns language name from context.
- // It returns an empty string if it is not set previously.
- func LanguageFromCtx(ctx context.Context) string {
- if ctx == nil {
- return ""
- }
- v := ctx.Value(ctxLanguage)
- if v != nil {
- return v.(string)
- }
- return ""
- }
|