go-carbon 1.3.2 版本发布,新增自定义 i18n 方法和日文翻译文件

栏目: 软件资讯 · 发布时间: 5年前

内容简介:carbon 是一个轻量级、语义化、对开发者友好的Golang时间处理库,支持链式调用、农历和gorm、xorm等主流orm 如果您觉得不错,请给个 star 吧 github:github.com/golang-module/carbon gitee:gitee.com/go-packag...

carbon 是一个轻量级、语义化、对开发者友好的Golang时间处理库,支持链式调用、农历和gorm、xorm等主流orm

如果您觉得不错,请给个 star 吧
github:github.com/golang-module/carbon
gitee:gitee.com/go-package/carbon

更新日志

  1. 按照功能拆分文件,优化代码组织结构
  2. 新增 SetDir ()、SetResources ()、SetLanguage () 方法用于自定义 i18n
  3. 新增 StartOfSecond ()、EndOfSecond () 方法
  4. 新增日语翻译文件 lang/jp.json
  5. 修复 goland 中部分文件 typo 警告
  6. 精简优化代码

设置区域

// 方式一(推荐)
c := carbon.Now().AddHours(1).SetLocale("jp") 
if c.Error != nil {
    // 错误处理
    fmt.Println(c.Error)
}
c.DiffForHumans() // 1 時間后

// 方式二
lang := NewLanguage()
if err := lang.SetLocale("jp");err != nil {
	// 错误处理
    fmt.Println(err)
}
carbon.Now().AddHours(1).SetLanguage(lang).DiffForHumans() // 1 時間后

设置目录

lang := NewLanguage()
if err := lang.SetDir("lang");err != nil {
	// 错误处理
    fmt.Println(err)
}
carbon.Now().AddHours(1).SetLanguage(lang).DiffForHumans() // 1 小时后

部分自定义翻译(其余仍然按照指定的locale翻译)

lang := NewLanguage()

if err := lang.SetLocale("en");err != nil {
	// 错误处理
    fmt.Println(err)
}

resources := map[string]string{
    "hour":"%dh",
}
lang.SetResources(resources)

carbon.Now().AddYears(1).SetLanguage(lang).DiffForHumans() // 1 year from now
carbon.Now().AddHours(1).SetLanguage(lang).DiffForHumans() // 1h from now

完全自定义翻译

lang := NewLanguage()
resources := map[string]string{
"year":"1 yr|%d yrs",
"month":"1 mo|%d mos",
"week":"%dw",
"day":"%dd",
"hour":"%dh",
"minute":"%dm",
"second":"%ds",
"now": "just now",
"ago":"%s ago",
"from_now":"in %s",
"before":"%s before",
"after":"%s after",
}
lang.SetResources(resources)

carbon.Now().AddYears(1).SetLanguage(lang).DiffForHumans() // in 1 yr
carbon.Now().AddHours(1).SetLanguage(lang).DiffForHumans() // in 1h

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

微服务设计

微服务设计

[英] Sam Newman / 崔力强、张 骏 / 人民邮电出版社 / 2016-5 / 69.00元

本书全面介绍了微服务的建模、集成、测试、部署和监控,通过一个虚构的公司讲解了如何建立微服务架构。主要内容包括认识微服务在保证系统设计与组织目标统一上的重要性,学会把服务集成到已有系统中,采用递增手段拆分单块大型应用,通过持续集成部署微服务,等等。一起来看看 《微服务设计》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器