A simple, semantic and developer-friendly golang package for time, has been included by awesome-go
github.com/golang-module/carbon
gitee.com/golang-module/carbon
// By github go get -u github.com/golang-module/carbon/v2 import "github.com/golang-module/carbon/v2" // By gitee go get -u gitee.com/golang-module/carbon/v2 import "gitee.com/golang-module/carbon/v2"
// By github go get -u github.com/golang-module/carbon import "github.com/golang-module/carbon" // By gitee go get -u gitee.com/golang-module/carbon import "gitee.com/golang-module/carbon"
Please refer to <a href="#faq">FAQ</a> for the difference between v1 and v2, v1 is no longer updated, only maintained.
Assuming the current time is 2020-08-05 13:14:15.999999999 +0800 CST
carbon.SetDefault(carbon.Default{ Layout: carbon.DateTimeLayout, Timezone: carbon.Local, WeekStartsAt: carbon.Sunday, Locale: "en", })
Suggest setting in the entry file such as
main.go
Carbon
and time.Time
// Convert standard Time.time to Carbon carbon.CreateFromStdTime(time.Now()) // Convert Carbon to standard Time.time carbon.Now().StdTime()
// Return datetime of today fmt.Printf("%s", carbon.Now()) // 2020-08-05 13:14:15 carbon.Now().String() // 2020-08-05 13:14:15 carbon.Now().ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Now().ToDateTimeString() // 2020-08-05 13:14:15 // Return date of today carbon.Now().ToDateString() // 2020-08-05 // Return time of today carbon.Now().ToTimeString() // 13:14:15 // Return datetime of today in a given timezone carbon.Now(Carbon.NewYork).ToDateTimeString() // 2020-08-05 14:14:15 // Return timestamp with second of today carbon.Now().Timestamp() // 1596604455 // Return timestamp with millisecond of today carbon.Now().TimestampMilli() // 1596604455999 // Return timestamp with microsecond of today carbon.Now().TimestampMicro() // 1596604455999999 // Return timestamp with nanosecond of today carbon.Now().TimestampNano() // 1596604455999999999 // Return datetime of yesterday fmt.Printf("%s", carbon.Yesterday()) // 2020-08-04 13:14:15 carbon.Yesterday().String() // 2020-08-04 13:14:15 carbon.Yesterday().ToString() // 2020-08-04 13:14:15 +0800 CST carbon.Yesterday().ToDateTimeString() // 2020-08-04 13:14:15 // Return date of yesterday carbon.Yesterday().ToDateString() // 2020-08-04 // Return time of yesterday carbon.Yesterday().ToTimeString() // 13:14:15 // Return datetime of yesterday on a given day carbon.Parse("2021-01-28 13:14:15").Yesterday().ToDateTimeString() // 2021-01-27 13:14:15 // Return datetime of yesterday in a given timezone carbon.Yesterday(Carbon.NewYork).ToDateTimeString() // 2020-08-04 14:14:15 // Return timestamp with second of yesterday carbon.Yesterday().Timestamp() // 1596518055 // Return timestamp with millisecond of yesterday carbon.Yesterday().TimestampMilli() // 1596518055999 // Return timestamp with microsecond of yesterday carbon.Yesterday().TimestampMicro() // 1596518055999999 // Return timestamp with nanosecond of yesterday carbon.Yesterday().TimestampNano() // 1596518055999999999 // Return datetime of tomorrow fmt.Printf("%s", carbon.Tomorrow()) // 2020-08-06 13:14:15 carbon.Tomorrow().String() // 2020-08-06 13:14:15 carbon.Tomorrow().ToString() // 2020-08-06 13:14:15 +0800 CST carbon.Tomorrow().ToDateTimeString() // 2020-08-06 13:14:15 // Return date of tomorrow carbon.Tomorrow().ToDateString() // 2020-08-06 // Return time of tomorrow carbon.Tomorrow().ToTimeString() // 13:14:15 // Return datetime of tomorrow on a given day carbon.Parse("2021-01-28 13:14:15").Tomorrow().ToDateTimeString() // 2021-01-29 13:14:15 // Return datetime of tomorrow in a given timezone carbon.Tomorrow(Carbon.NewYork).ToDateTimeString() // 2020-08-06 14:14:15 // Return timestamp with second of tomorrow carbon.Tomorrow().Timestamp() // 1596690855 // Return timestamp with millisecond of tomorrow carbon.Tomorrow().TimestampMilli() // 1596690855999 // Return timestamp with microsecond of tomorrow carbon.Tomorrow().TimestampMicro() // 1596690855999999 // Return timestamp with nanosecond of tomorrow carbon.Tomorrow().TimestampNano() // 1596690855999999999
Carbon
instance// Create a Carbon instance from a given timestamp with second carbon.CreateFromTimestamp(-1).ToString() // 1970-01-01 07:59:59 +0800 CST carbon.CreateFromTimestamp(0).ToString() // 1970-01-01 08:00:00 +0800 CST carbon.CreateFromTimestamp(1).ToString() // 1970-01-01 08:00:01 +0800 CST carbon.CreateFromTimestamp(1649735755).ToString() // 2022-04-12 11:55:55 +0800 CST // Create a Carbon instance from a given timestamp with millisecond carbon.CreateFromTimestampMilli(1649735755981).ToString() // 2022-04-12 11:55:55.981 +0800 CST // Create a Carbon instance from a given timestamp with microsecond carbon.CreateFromTimestampMicro(1649735755981566).ToString() // 2022-04-12 11:55:55.981566 +0800 CST // Create a Carbon instance from a given timestamp with nanosecond carbon.CreateFromTimestampNano(1649735755981566000).ToString() // 2022-04-12 11:55:55.981566 +0800 CST // Create a Carbon instance from a given date and time carbon.CreateFromDateTime(2020, 8, 5, 13, 14, 15).ToString() // 2020-08-05 13:14:15 +0800 CST // Create a Carbon instance from a given date and time with millisecond carbon.CreateFromDateTimeMilli(2020, 8, 5, 13, 14, 15, 999).ToString() // 2020-08-05 13:14:15.999 +0800 CST // Create a Carbon instance from a given date and time with microsecond carbon.CreateFromDateTimeMicro(2020, 8, 5, 13, 14, 15, 999999).ToString() // 2020-08-05 13:14:15.999999 +0800 CST // Create a Carbon instance from a given date and time with nanosecond carbon.CreateFromDateTimeNano(2020, 8, 5, 13, 14, 15, 999999999).ToString() // 2020-08-05 13:14:15.999999999 +0800 CST // Create a Carbon instance from a given year, month and day carbon.CreateFromDate(2020, 8, 5).ToString() // 2020-08-05 00:00:00 +0800 CST // Create a Carbon instance from a given year, month and day with millisecond carbon.CreateFromDateMilli(2020, 8, 5, 999).ToString() // 2020-08-05 00:00:00.999 +0800 CST // Create a Carbon instance from a given year, month and day with microsecond carbon.CreateFromDateMicro(2020, 8, 5, 999999).ToString() // 2020-08-05 00:00:00.999999 +0800 CST // Create a Carbon instance from a given year, month and day with nanosecond carbon.CreateFromDateNano(2020, 8, 5, 999999999).ToString() // 2020-08-05 00:00:00.999999999 +0800 CST // Create a Carbon instance from a given hour, minute and second carbon.CreateFromTime(13, 14, 15).ToString() // 2020-08-05 13:14:15 +0800 CST // Create a Carbon instance from a given hour, minute and second with millisecond carbon.CreateFromTimeMilli(13, 14, 15, 999).ToString() // 2020-08-05 13:14:15.999 +0800 CST // Create a Carbon instance from a given hour, minute and second with microsecond carbon.CreateFromTimeMicro(13, 14, 15, 999999).ToString() // 2020-08-05 13:14:15.999999 +0800 CST // Create a Carbon instance from a given hour, minute and second with nanosecond carbon.CreateFromTimeNano(13, 14, 15, 999999999).ToString() // 2020-08-05 13:14:15.999999999 +0800 CST
Carbon
instancecarbon.Parse("").ToDateTimeString() // empty string carbon.Parse("0").ToDateTimeString() // empty string carbon.Parse("00:00:00").ToDateTimeString() // empty string carbon.Parse("0000-00-00").ToDateTimeString() // empty string carbon.Parse("0000-00-00 00:00:00").ToDateTimeString() // empty string carbon.Parse("now").ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Parse("yesterday").ToString() // 2020-08-04 13:14:15 +0800 CST carbon.Parse("tomorrow").ToString() // 2020-08-06 13:14:15 +0800 CST carbon.Parse("2020").ToString() // 2020-01-01 00:00:00 +0800 CST carbon.Parse("2020-8").ToString() // 2020-08-01 00:00:00 +0800 CST carbon.Parse("2020-08").ToString() // 2020-08-01 00:00:00 +0800 CST carbon.Parse("2020-8-5").ToString() // 2020-08-05 00:00:00 +0800 CST carbon.Parse("2020-8-05").ToString() // 2020-08-05 00:00:00 +0800 CST carbon.Parse("2020-08-05").ToString() // 2020-08-05 00:00:00 +0800 CST carbon.Parse("2020-08-05.999").ToString() // 2020-08-05 00:00:00.999 +0800 CST carbon.Parse("2020-08-05.999999").ToString() // 2020-08-05 00:00:00.999999 +0800 CST carbon.Parse("2020-08-05.999999999").ToString() // 2020-08-05 00:00:00.999999999 +0800 CST carbon.Parse("2020-8-5 13:14:15").ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Parse("2020-8-05 13:14:15").ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Parse("2020-08-5 13:14:15").ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Parse("2020-08-05 13:14:15").ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Parse("2020-08-05 13:14:15.999").ToString() // 2020-08-05 13:14:15.999 +0800 CST carbon.Parse("2020-08-05 13:14:15.999999").ToString() // 2020-08-05 13:14:15.999999 +0800 CST carbon.Parse("2020-08-05 13:14:15.999999999").ToString() // 2020-08-05 13:14:15.999999999 +0800 CST carbon.Parse("2020-8-5T13:14:15+08:00").ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Parse("2020-8-05T13:14:15+08:00").ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Parse("2020-08-05T13:14:15+08:00").ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Parse("2020-08-05T13:14:15.999+08:00").ToString() // 2020-08-05 13:14:15.999 +0800 CST carbon.Parse("2020-08-05T13:14:15.999999+08:00").ToString() // 2020-08-05 13:14:15.999999 +0800 CST carbon.Parse("2020-08-05T13:14:15.999999999+08:00").ToString() // 2020-08-05 13:14:15.999999999 +0800 CST carbon.Parse("20200805").ToString() // 2020-08-05 00:00:00 +0800 CST carbon.Parse("20200805131415").ToString() // 2020-08-05 13:14:15 +0800 CST carbon.Parse("20200805131415.999").ToString() // 2020-08-05 13:14:15.999 +0800 CST carbon.Parse("20200805131415.999999").ToString() // 2020-08-05 13:14:15.999999 +0800 CST carbon.Parse("20200805131415.999999999").ToString() // 2020-08-05 13:14:15.999999999 +0800 CST carbon.Parse("20200805131415.999+08:00").ToString() // 2020-08-05 13:14:15.999 +0800 CST carbon.Parse("20200805131415.999999+08:00").ToString() // 2020-08-05 13:14:15.999999 +0800 CST carbon.Parse("20200805131415.999999999+08:00").ToString() // 2020-08-05 13:14:15.999999999 +0800 CST
Carbon
instance by formatcarbon.ParseByFormat("2020|08|05
选题、配图、成文,一站式创作,让内容运营更高效
讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。
AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。
最强AI数据分析助 手
小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。
像人一样思考的AI智能体
imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。
AI数字人视频创作平台
Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。
一站式AI创作平台
提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作
AI办公助手,复杂任务高效处理
AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!
AI小说写作助手,一站式润色、改写、扩写
蛙蛙写作—国内先进的AI写作平台,涵盖小说、学术、社交媒体等多场景。提供续写、改写、润色等功能,助力创作者高效优化写作流程。界面简洁,功能全面,适合各类写作者提升内容品质和工作效率。
全能AI智能助手,随时解答生活与工作的多样问题
问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。
实时语音翻译/同声传译工具
Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。
最新AI工具、AI资讯
独家AI资源、AI项目落地
微信扫一扫关注公众号