carbon

package module
v1.3.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 18, 2021 License: MIT Imports: 11 Imported by: 169

README

Carbon

中文 | English

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

如果您觉得不错,请给个 star 吧

github:github.com/golang-module/carbon

gitee:gitee.com/go-package/carbon

安装使用
// 使用 github 库
go get -u github.com/golang-module/carbon

import (
    "github.com/golang-module/carbon"
)

// 使用 gitee 库
go get -u gitee.com/go-package/carbon

import (
    "gitee.com/go-package/carbon"
)
用法示例

默认时区为 Local,即服务器所在时区,假设当前时间为 2020-08-05 13:14:15

昨天、今天、明天
// 今天此刻
carbon.Now().ToDateTimeString() // 2020-08-05 13:14:15
// 今天日期
carbon.Now().ToDateString() // 2020-08-05
// 今天时间
carbon.Now().ToTimeString() // 13:14:15
// 今天秒级时间戳
carbon.Now().ToTimestamp() // 1596604455
carbon.Now().ToTimestampWithSecond() // 1596604455
// 今天毫秒级时间戳
carbon.Now().ToTimestampWithMillisecond() // 1596604455000
// 今天微秒级时间戳
carbon.Now().ToTimestampWithMicrosecond() // 1596604455000000
// 今天纳秒级时间戳
carbon.Now().ToTimestampWithNanosecond() // 1596604455000000000
// 指定时区的今天此刻
carbon.SetTimezone(Carbon.NewYork).Now().ToDateTimeString() // 2020-08-05 01:14:15

// 昨天此刻
carbon.Yesterday().ToDateTimeString() // 2020-08-04 13:14:15
// 昨天日期
carbon.Yesterday().ToDateString() // 2020-08-04
// 昨天时间
carbon.Yesterday().ToTimeString() // 13:14:15
// 昨天秒级时间戳
carbon.Yesterday().ToTimestamp() // 1596518055
carbon.Yesterday().ToTimestampWithSecond() // 1596518055
// 明天毫秒级时间戳
carbon.Yesterday().ToTimestampWithMillisecond() // 1596518055000
// 明天微秒级时间戳
carbon.Yesterday().ToTimestampWithMicrosecond() // 1596518055000000
// 明天纳秒级时间戳
carbon.Yesterday().ToTimestampWithNanosecond() // 1596518055000000000
// 指定时区的昨天此刻
carbon.SetTimezone(Carbon.NewYork).Yesterday().ToDateTimeString() // 2020-08-04 01:14:15
// 指定日期的昨天此刻
carbon.Parse("2021-01-28 13:14:15").Yesterday().ToDateTimeString() // 2021-01-27 13:14:15

// 明天此刻
carbon.Tomorrow().ToDateTimeString() // 2020-08-06 13:14:15
// 明天日期
carbon.Tomorrow().ToDateString() // 2020-08-06
// 明天时间
carbon.Tomorrow().ToTimeString() // 13:14:15
// 明天秒级时间戳
carbon.Tomorrow().ToTimestamp() // 1596690855
carbon.Tomorrow().ToTimestampWithSecond() // 1596690855
// 明天毫秒级时间戳
carbon.Tomorrow().ToTimestampWithMillisecond() // 1596690855000
// 明天微秒级时间戳
carbon.Tomorrow().ToTimestampWithMicrosecond() // 1596690855000000
// 明天纳秒级时间戳
carbon.Tomorrow().ToTimestampWithNanosecond() // 1596690855000000000
// 指定时区的明天此刻
carbon.SetTimezone(Carbon.NewYork).Tomorrow().ToDateTimeString() // 2020-08-06 01:14:15
// 指定日期的明天此刻
carbon.Parse("2021-01-28 13:14:15").Tomorrow().ToDateTimeString() // 2021-01-29 13:14:15
创建 Carbon 实例
// 从秒级时间戳创建 Carbon 实例
carbon.CreateFromTimestamp(1596604455).ToDateTimeString() // 2020-08-05 13:14:15
// 从毫秒级时间戳创建 Carbon 实例
carbon.CreateFromTimestamp(1596604455000).ToDateTimeString() // 2020-08-05 13:14:15
// 从微秒级时间戳创建 Carbon 实例
carbon.CreateFromTimestamp(1596604455000000).ToDateTimeString() // 2020-08-05 13:14:15
// 从纳级时间戳创建 Carbon 实例
carbon.CreateFromTimestamp(1596604455000000000).ToDateTimeString() // 2020-08-05 13:14:15

// 从年月日时分秒创建 Carbon 实例
carbon.CreateFromDateTime(2020, 8, 5, 13, 14, 15).ToDateTimeString() // 2020-08-05 13:14:15
// 从年月日创建 Carbon 实例(时分秒默认为当前时分秒)
carbon.CreateFromDate(2020, 8, 5).ToDateTimeString() // 2020-08-05 13:14:15
// 从时分秒创建 Carbon 实例(年月日默认为当前年月日)
carbon.CreateFromTime(13, 14, 15).ToDateTimeString() // 2020-08-05 13:14:15
将标准格式时间字符串解析成 Carbon 实例
carbon.Parse("").ToDateTimeString() // 空字符串
carbon.Parse("0000-00-00 00:00:00").ToDateTimeString() // 空字符串
carbon.Parse("0000-00-00").ToDateTimeString() // 空字符串
carbon.Parse("2020-08-05 13:14:15").ToDateTimeString() // 2020-08-05 13:14:15
carbon.Parse("2020-08-05").ToDateTimeString() // 2020-08-05 00:00:00
carbon.Parse("20200805131415").ToDateTimeString() // 2020-08-05 13:14:15
carbon.Parse("20200805").ToDateTimeString() // 2020-08-05 00:00:00
carbon.Parse("2020-08-05T13:14:15+08:00").ToDateTimeString() // 2020-08-05 00:00:00
将特殊格式时间字符串解析成 Carbon 实例
carbon.ParseByFormat("2020|08|05 13|14|15", "Y|m|d H|i|s").ToDateTimeString() // 2020-08-05 13:14:15
carbon.ParseByFormat("It is 2020-08-05 13:14:15", "It is Y-m-d H:i:s").ToDateTimeString() // 2020-08-05 13:14:15
carbon.ParseByFormat("今天是 2020年08月05日13时14分15秒", "今天是 Y年m月d日H时i分s秒").ToDateTimeString() // 2020-08-05 13:14:15
将布局时间字符串解析成 Carbon 实例
carbon.ParseByLayout("2020|08|05 13|14|15", "2006|01|02 15|04|05").ToDateTimeString() // 2020-08-05 13:14:15
carbon.ParseByLayout("It is 2020-08-05 13:14:15", "It is 2006-01-02 15:04:05").ToDateTimeString() // 2020-08-05 13:14:15
carbon.ParseByLayout("今天是 2020年08月05日13时14分15秒", "今天是 2006年01月02日15时04分05秒").ToDateTimeString() // 2020-08-05 13:14:15
carbon 和 time.Time 互转
// 将 time.Time 转换成 Carbon
carbon.Time2Carbon(time.Now())
// 将 Carbon 转换成 time.Time
carbon.Now().Carbon2Time() 或 carbon.Now().Time
开始时间、结束时间
// 本年开始时间
carbon.Parse("2020-08-05 13:14:15").StartOfYear().ToDateTimeString() // 2020-01-01 00:00:00
// 本年结束时间
carbon.Parse("2020-08-05 13:14:15").EndOfYear().ToDateTimeString() // 2020-12-31 23:59:59

// 本月开始时间
carbon.Parse("2020-08-05 13:14:15").StartOfMonth().ToDateTimeString() // 2020-08-01 00:00:00
// 本月结束时间
carbon.Parse("2020-08-05 13:14:15").EndOfMonth().ToDateTimeString() // 2020-08-31 23:59:59

// 本周开始时间
carbon.Parse("2020-08-05 13:14:15").StartOfWeek(time.Sunday).ToDateTimeString() // 2020-08-02 00:00:00
carbon.Parse("2020-08-05 13:14:15").StartOfWeek(time.Monday).ToDateTimeString() // 2020-08-03 00:00:00
// 本周结束时间
carbon.Parse("2020-08-05 13:14:15").EndOfWeek(time.Sunday).ToDateTimeString() // 2020-08-08 23:59:59
carbon.Parse("2020-08-05 13:14:15").EndOfWeek(time.Monday).ToDateTimeString() // 2020-08-09 23:59:59

// 本日开始时间
carbon.Parse("2020-08-05 13:14:15").StartOfDay().ToDateTimeString() // 2020-08-05 00:00:00
// 本日结束时间
carbon.Parse("2020-08-05 13:14:15").EndOfDay().ToDateTimeString() // 2020-08-05 23:59:59

// 本小时开始时间
carbon.Parse("2020-08-05 13:14:15").StartOfHour().ToDateTimeString() // 2020-08-05 13:00:00
// 本小时结束时间
carbon.Parse("2020-08-05 13:14:15").EndOfHour().ToDateTimeString() // 2020-08-05 13:59:59

// 本分钟开始时间
carbon.Parse("2020-08-05 13:14:15").StartOfMinute().ToDateTimeString() // 2020-08-05 13:14:00
// 本分钟结束时间
carbon.Parse("2020-08-05 13:14:15").EndOfMinute().ToDateTimeString() // 2020-08-05 13:14:59

// 本秒开始时间
carbon.Parse("2020-08-05 13:14:15").StartOfSecond().Format("Y-m-d H:i:s.u") // 2020-08-05 13:14:15.0
// 本秒结束时间
carbon.Parse("2020-08-05 13:14:15").EndOfSecond().Format("Y-m-d H:i:s.u") // 2020-08-05 13:14:15.999
时间旅行
// 三世纪后
carbon.Parse("2020-02-29 13:14:15").AddCenturies(3).ToDateTimeString() // 2320-02-29 13:14:15
// 三世纪后(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").AddCenturiesNoOverflow(3).ToDateTimeString() // 2320-02-29 13:14:15

// 一世纪后
carbon.Parse("2020-02-29 13:14:15").AddCentury().ToDateTimeString() // 2120-02-29 13:14:15
// 一世纪后(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").AddCenturyNoOverflow().ToDateTimeString() // 2120-02-29 13:14:15

// 三世纪前
carbon.Parse("2020-02-29 13:14:15").SubCenturies(3).ToDateTimeString() // 1720-02-29 13:14:15
// 三世纪前(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").SubCenturiesNoOverflow(3).ToDateTimeString() // 1720-02-29 13:14:15

// 一世纪前
carbon.Parse("2020-02-29 13:14:15").SubCentury().ToDateTimeString() // 1920-02-29 13:14:15
// 一世纪前(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").SubCenturyNoOverflow().ToDateTimeString() // 1920-02-29 13:14:15

// 三年后
carbon.Parse("2020-02-29 13:14:15").AddYears(3).ToDateTimeString() // 2023-03-01 13:14:15
// 三年后(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").AddYearsNoOverflow(3).ToDateTimeString() // 2023-02-28 13:14:15

// 一年后
carbon.Parse("2020-02-29 13:14:15").AddYear().ToDateTimeString() // 2021-03-01 13:14:15
// 一年后(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").AddYearNoOverflow().ToDateTimeString() // 2021-02-28 13:14:15

// 三年前
carbon.Parse("2020-02-29 13:14:15").SubYears(3).ToDateTimeString() // 2017-03-01 13:14:15
// 三年前(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").SubYearsNoOverflow(3).ToDateTimeString() // 2017-02-28 13:14:15

// 一年前
carbon.Parse("2020-02-29 13:14:15").SubYear().ToDateTimeString() // 2019-03-01 13:14:15
// 一年前(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").SubYearNoOverflow().ToDateTimeString() // 2019-02-28 13:14:15

// 三季度后
carbon.Parse("2019-08-31 13:14:15").AddQuarters(3).ToDateTimeString() // 2019-03-02 13:14:15
// 三季度后(月份不溢出)
carbon.Parse("2019-08-31 13:14:15").AddQuartersNoOverflow(3).ToDateTimeString() // 2019-02-29 13:14:15

// 一季度后
carbon.Parse("2019-11-30 13:14:15").AddQuarter().ToDateTimeString() // 2020-03-01 13:14:15
// 一季度后(月份不溢出)
carbon.Parse("2019-11-30 13:14:15").AddQuarterNoOverflow().ToDateTimeString() // 2020-02-29 13:14:15

// 三季度前
carbon.Parse("2019-08-31 13:14:15").SubQuarters(3).ToDateTimeString() // 2019-03-03 13:14:15
// 三季度前(月份不溢出)
carbon.Parse("2019-08-31 13:14:15").SubQuartersNoOverflow(3).ToDateTimeString() // 2019-02-28 13:14:15

// 一季度前
carbon.Parse("2020-05-31 13:14:15").SubQuarter().ToDateTimeString() // 2020-03-02 13:14:15
// 一季度前(月份不溢出)
carbon.Parse("2020-05-31 13:14:15").SubQuarterNoOverflow().ToDateTimeString() // 2020-02-29 13:14:15

// 三月后
carbon.Parse("2020-02-29 13:14:15").AddMonths(3).ToDateTimeString() // 2020-05-29 13:14:15
// 三月后(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").AddMonthsNoOverflow(3).ToDateTimeString() // 2020-05-29 13:14:15

// 一月后
carbon.Parse("2020-01-31 13:14:15").AddMonth().ToDateTimeString() // 2020-03-02 13:14:15
// 一月后(月份不溢出)
carbon.Parse("2020-01-31 13:14:15").AddMonthNoOverflow().ToDateTimeString() // 2020-02-29 13:14:15

// 三月前
carbon.Parse("2020-02-29 13:14:15").SubMonths(3).ToDateTimeString() // 2019-11-29 13:14:15
// 三月前(月份不溢出)
carbon.Parse("2020-02-29 13:14:15").SubMonthsNoOverflow(3).ToDateTimeString() // 2019-11-29 13:14:15

// 一月前
carbon.Parse("2020-03-31 13:14:15").SubMonth().ToDateTimeString() // 2020-03-02 13:14:15
// 一月前(月份不溢出)
carbon.Parse("2020-03-31 13:14:15").SubMonthNoOverflow().ToDateTimeString() // 2020-02-29 13:14:15

// 三周后
carbon.Parse("2020-02-29 13:14:15").AddWeeks(3).ToDateTimeString() // 2020-03-21 13:14:15
// 一周后
carbon.Parse("2020-02-29 13:14:15").AddWeek().ToDateTimeString() // 2020-03-07 13:14:15

// 三周前
carbon.Parse("2020-02-29 13:14:15").SubWeeks(3).ToDateTimeString() // 2020-02-08 13:14:15
// 一周前
carbon.Parse("2020-02-29 13:14:15").SubWeek().ToDateTimeString() // 2020-02-22 13:14:15

// 三天后
carbon.Parse("2020-08-05 13:14:15").AddDays(3).ToDateTimeString() // 2020-08-08 13:14:15
// 一天后
carbon.Parse("2020-08-05 13:14:15").AddDay().ToDateTimeString() // 2020-08-05 13:14:15

// 三天前
carbon.Parse("2020-08-05 13:14:15").SubDays(3).ToDateTimeString() // 2020-08-02 13:14:15
// 一天前
carbon.Parse("2020-08-05 13:14:15").SubDay().ToDateTimeString() // 2020-08-04 13:14:15

// 三小时后
carbon.Parse("2020-08-05 13:14:15").AddHours(3).ToDateTimeString() // 2020-08-05 16:14:15
// 二小时半后
carbon.Parse("2020-08-05 13:14:15").AddDuration("2.5h").ToDateTimeString() // 2020-08-05 15:44:15
carbon.Parse("2020-08-05 13:14:15").AddDuration("2h30m").ToDateTimeString() // 2020-08-05 15:44:15
// 一小时后
carbon.Parse("2020-08-05 13:14:15").AddHour().ToDateTimeString() // 2020-08-05 14:14:15

// 三小时前
carbon.Parse("2020-08-05 13:14:15").SubHours(3).ToDateTimeString() // 2020-08-05 10:14:15
// 二小时半前
carbon.Parse("2020-08-05 13:14:15").SubDuration("2.5h").ToDateTimeString() // 2020-08-05 10:44:15
carbon.Parse("2020-08-05 13:14:15").SubDuration("2h30m").ToDateTimeString() // 2020-08-05 10:44:15
// 一小时前
carbon.Parse("2020-08-05 13:14:15").SubHour().ToDateTimeString() // 2020-08-05 12:14:15

// 三分钟后
carbon.Parse("2020-08-05 13:14:15").AddMinutes(3).ToDateTimeString() // 2020-08-05 13:17:15
// 二分钟半后
carbon.Parse("2020-08-05 13:14:15").AddDuration("2.5m").ToDateTimeString() // 2020-08-05 13:16:45
carbon.Parse("2020-08-05 13:14:15").AddDuration("2m30s").ToDateTimeString() // 2020-08-05 13:16:45
// 一分钟后
carbon.Parse("2020-08-05 13:14:15").AddMinute().ToDateTimeString() // 2020-08-05 13:15:15

// 三分钟前
carbon.Parse("2020-08-05 13:14:15").SubMinutes(3).ToDateTimeString() // 2020-08-05 13:11:15
// 二分钟半前
carbon.Parse("2020-08-05 13:14:15").SubDuration("2.5m").ToDateTimeString() // 2020-08-05 13:11:45
carbon.Parse("2020-08-05 13:14:15").SubDuration("2m30s").ToDateTimeString() // 2020-08-05 13:11:45
// 一分钟前
carbon.Parse("2020-08-05 13:14:15").SubMinute().ToDateTimeString() // 2020-08-05 13:13:15

// 三秒钟后
carbon.Parse("2020-08-05 13:14:15").AddSeconds(3).ToDateTimeString() // 2020-08-05 13:14:18
// 二秒钟半后
carbon.Parse("2020-08-05 13:14:15").AddDuration("2.5s").ToDateTimeString() // 2020-08-05 13:14:17
// 一秒钟后
carbon.Parse("2020-08-05 13:14:15").AddSecond().ToDateTimeString() // 2020-08-05 13:14:16

// 三秒钟前
carbon.Parse("2020-08-05 13:14:15").SubSeconds(3).ToDateTimeString() // 2020-08-05 13:14:12
// 二秒钟半前
carbon.Parse("2020-08-05 13:14:15").SubDuration("2.5s").ToDateTimeString() // 2020-08-05 13:14:12
// 一秒钟前
carbon.Parse("2020-08-05 13:14:15").SubSecond().ToDateTimeString() // 2020-08-05 13:14:14
时间差
// 相差多少周
carbon.Parse("2020-08-05 13:14:15").DiffInWeeks(carbon.Parse("2020-07-28 13:14:15")) // -1
// 相差多少周(绝对值)
carbon.Parse("2020-08-05 13:14:15").DiffInWeeksWithAbs(carbon.Parse("2020-07-28 13:14:15")) // 1

// 相差多少天
carbon.Parse("2020-08-05 13:14:15").DiffInDays(carbon.Parse("2020-08-04 13:14:15")) // -1
// 相差多少天(绝对值)
carbon.Parse("2020-08-05 13:14:15").DiffInDaysWithAbs(carbon.Parse("2020-08-04 13:14:15")) // 1

// 相差多少小时
carbon.Parse("2020-08-05 13:14:15").DiffInHours(carbon.Parse("2020-08-05 12:14:15")) // -1
// 相差多少小时(绝对值)
carbon.Parse("2020-08-05 13:14:15").DiffInHoursWithAbs(carbon.Parse("2020-08-05 12:14:15")) // 1

// 相差多少分
carbon.Parse("2020-08-05 13:14:15").DiffInMinutes(carbon.Parse("2020-08-05 13:13:15")) // -1
// 相差多少分(绝对值)
carbon.Parse("2020-08-05 13:14:15").DiffInMinutesWithAbs(carbon.Parse("2020-08-05 13:13:15")) // 1

// 相差多少秒
carbon.Parse("2020-08-05 13:14:15").DiffInSeconds(carbon.Parse("2020-08-05 13:14:14")) // -1
// 相差多少秒(绝对值)
carbon.Parse("2020-08-05 13:14:15").DiffInSecondsWithAbs(carbon.Parse("2020-08-05 13:14:14")) // 1

// 对人类友好的可读格式时间差(需要先把lang目录复制到项目目录下)
carbon.Parse("2020-08-05 13:14:15").DiffForHumans()) // just now
carbon.Parse("2019-08-05 13:14:15").DiffForHumans() // 1 year ago
carbon.Parse("2018-08-05 13:14:15").DiffForHumans() // 2 years ago
carbon.Parse("2021-08-05 13:14:15").DiffForHumans() // 1 year from now
carbon.Parse("2022-08-05 13:14:15").DiffForHumans() // 2 years from now

carbon.Parse("2020-08-05 13:14:15").DiffForHumans(carbon.Now()) // 1 year before
carbon.Parse("2019-08-05 13:14:15").DiffForHumans(carbon.Now()) // 2 years before
carbon.Parse("2018-08-05 13:14:15").DiffForHumans(carbon.Now()) // 1 year after
carbon.Parse("2022-08-05 13:14:15").DiffForHumans(carbon.Now()) // 2 years after
时间判断
// 是否是零值时间
carbon.Parse("").IsZero() // true
carbon.Parse("0").IsZero() // true
carbon.Parse("0000-00-00 00:00:00").IsZero() // true
carbon.Parse("0000-00-00").IsZero() // true
carbon.Parse("00:00:00").IsZero() // true
carbon.Parse("2020-08-05 00:00:00").IsZero() // false
carbon.Parse("2020-08-05").IsZero() // false

// 是否是当前时间
carbon.Now().IsNow() // true
// 是否是未来时间
carbon.Tomorrow().IsFuture() // true
// 是否是过去时间
carbon.Yesterday().IsPast() // true

// 是否是闰年
carbon.Parse("2020-08-05 13:14:15").IsLeapYear() // true
// 是否是长年
carbon.Parse("2020-08-05 13:14:15").IsLongYear() // true

// 是否是一月
carbon.Parse("2020-08-05 13:14:15").IsJanuary() // false
// 是否是二月
carbon.Parse("2020-08-05 13:14:15").IsFebruary() // false
// 是否是三月
carbon.Parse("2020-08-05 13:14:15").IsMarch() // false
// 是否是四月
carbon.Parse("2020-08-05 13:14:15").IsApril()  // false
// 是否是五月
carbon.Parse("2020-08-05 13:14:15").IsMay() // false
// 是否是六月
carbon.Parse("2020-08-05 13:14:15").IsJune() // false
// 是否是七月
carbon.Parse("2020-08-05 13:14:15").IsJuly() // false
// 是否是八月
carbon.Parse("2020-08-05 13:14:15").IsAugust() // false
// 是否是九月
carbon.Parse("2020-08-05 13:14:15").IsSeptember() // true
// 是否是十月
carbon.Parse("2020-08-05 13:14:15").IsOctober() // false
// 是否是十一月
carbon.Parse("2020-08-05 13:14:15").IsNovember() // false
// 是否是十二月
carbon.Parse("2020-08-05 13:14:15").IsDecember() // false

// 是否是周一
carbon.Parse("2020-08-05 13:14:15").IsMonday() // false
// 是否是周二
carbon.Parse("2020-08-05 13:14:15").IsTuesday() // true
// 是否是周三
carbon.Parse("2020-08-05 13:14:15").IsWednesday() // false
// 是否是周四
carbon.Parse("2020-08-05 13:14:15").IsThursday()  // false
// 是否是周五
carbon.Parse("2020-08-05 13:14:15").IsFriday() // false
// 是否是周六
carbon.Parse("2020-08-05 13:14:15").IsSaturday() // false
// 是否是周日
carbon.Parse("2020-08-05 13:14:15").IsSunday() // false

// 是否是工作日
carbon.Parse("2020-08-05 13:14:15").IsWeekday() // false
// 是否是周末
carbon.Parse("2020-08-05 13:14:15").IsWeekend() // true

// 是否是昨天
carbon.Parse("2020-08-04 13:14:15").IsYesterday() // true
carbon.Parse("2020-08-04 00:00:00").IsYesterday() // true
carbon.Parse("2020-08-04").IsYesterday() // true
// 是否是今天
carbon.Parse("2020-08-05 13:14:15").IsToday() // true
carbon.Parse("2020-08-05 00:00:00").IsToday() // true
carbon.Parse("2020-08-05").IsToday() // true
// 是否是明天
carbon.Parse("2020-08-06 13:14:15").IsTomorrow() // true
carbon.Parse("2020-08-06 00:00:00").IsTomorrow() // true
carbon.Parse("2020-08-06").IsTomorrow() // true

// 是否大于
carbon.Parse("2020-08-05 13:14:15").Gt(carbon.Parse("2020-08-04 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Gt(carbon.Parse("2020-08-05 13:14:15")) // false
carbon.Parse("2020-08-05 13:14:15").Compare(">", carbon.Parse("2020-08-04 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Compare(">", carbon.Parse("2020-08-05 13:14:15")) // false

// 是否小于
carbon.Parse("2020-08-05 13:14:15").Lt(carbon.Parse("2020-08-06 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Lt(carbon.Parse("2020-08-05 13:14:15")) // false
carbon.Parse("2020-08-05 13:14:15").Compare("<", carbon.Parse("2020-08-06 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Compare("<", carbon.Parse("2020-08-05 13:14:15")) // false

// 是否等于
carbon.Parse("2020-08-05 13:14:15").Eq(carbon.Parse("2020-08-05 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Eq(carbon.Parse("2020-08-05 13:14:00")) // false
carbon.Parse("2020-08-05 13:14:15").Compare("=", carbon.Parse("2020-08-05 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Compare("=", carbon.Parse("2020-08-05 13:14:00")) // false

// 是否不等于
carbon.Parse("2020-08-05 13:14:15").Ne(carbon.Parse("2020-08-06 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Ne(carbon.Parse("2020-08-05 13:14:15")) // false
carbon.Parse("2020-08-05 13:14:15").Compare("!=", carbon.Parse("2020-08-06 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Compare("<>", carbon.Parse("2020-08-05 13:14:15")) // false

// 是否大于等于
carbon.Parse("2020-08-05 13:14:15").Gte(carbon.Parse("2020-08-04 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Gte(carbon.Parse("2020-08-05 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Compare(">=", carbon.Parse("2020-08-04 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Compare(">=", carbon.Parse("2020-08-05 13:14:15")) // true

// 是否小于等于
carbon.Parse("2020-08-05 13:14:15").Lte(carbon.Parse("2020-08-06 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Lte(carbon.Parse("2020-08-05 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Compare("<=", carbon.Parse("2020-08-06 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").Compare("<=", carbon.Parse("2020-08-05 13:14:15")) // true

// 是否在两个时间之间(不包括这两个时间)
carbon.Parse("2020-08-05 13:14:15").Between(carbon.Parse("2020-08-05 13:14:15"), carbon.Parse("2020-08-06 13:14:15")) // false
carbon.Parse("2020-08-05 13:14:15").Between(carbon.Parse("2020-08-04 13:14:15"), carbon.Parse("2020-08-06 13:14:15")) // true

// 是否在两个时间之间(包括开始时间)
carbon.Parse("2020-08-05 13:14:15").BetweenIncludedStartTime(carbon.Parse("2020-08-05 13:14:15"), carbon.Parse("2020-08-06 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").BetweenIncludedStartTime(carbon.Parse("2020-08-04 13:14:15"), carbon.Parse("2020-08-06 13:14:15")) // true

// 是否在两个时间之间(包括结束时间)
carbon.Parse("2020-08-05 13:14:15").BetweenIncludedEndTime(carbon.Parse("2020-08-04 13:14:15"), carbon.Parse("2020-08-05 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").BetweenIncludedEndTime(carbon.Parse("2020-08-04 13:14:15"), carbon.Parse("2020-08-06 13:14:15")) // true

// 是否在两个时间之间(包括这两个时间)
carbon.Parse("2020-08-05 13:14:15").BetweenIncludedBoth(carbon.Parse("2020-08-05 13:14:15"), carbon.Parse("2020-08-06 13:14:15")) // true
carbon.Parse("2020-08-05 13:14:15").BetweenIncludedBoth(carbon.Parse("2020-08-04 13:14:15"), carbon.Parse("2020-08-05 13:14:15")) // true

时间输出
// 输出秒级时间戳
carbon.Parse("2020-08-05 13:14:15").ToTimestamp() // 1596604455
carbon.Parse("2020-08-05 13:14:15").ToTimestampWithSecond() // 1596604455
// 输出毫秒级时间戳
carbon.Parse("2020-08-05 13:14:15").ToTimestampWithMillisecond() // 1596604455000
// 输出微秒级时间戳
carbon.Parse("2020-08-05 13:14:15").ToTimestampWithMicrosecond() // 1596604455000000
// 输出纳秒级时间戳
carbon.Parse("2020-08-05 13:14:15").ToTimestampWithNanosecond() // 1596604455000000000

// 输出日期时间字符串
carbon.Parse("2020-08-05 13:14:15").ToDateTimeString() // 2020-08-05 13:14:15
carbon.Parse("2020-08-05 13:14:15").ToDateTimeStringWithTimezone(carbon.LosAngeles) // 2020-08-04 22:14:15
// 输出日期字符串
carbon.Parse("2020-08-05 13:14:15").ToDateString() // 2020-08-05
carbon.Parse("2020-08-05 13:14:15").ToDateStringWithTimezone(carbon.LosAngeles) // 2020-08-04
// 输出时间字符串
carbon.Parse("2020-08-05 13:14:15").ToTimeString() // 13:14:15
carbon.Parse("2020-08-05 13:14:15").ToTimeStringWithTimezone(carbon.LosAngeles) // 22:14:15

// 输出 Ansic 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToAnsicString() // Wed Aug  5 13:14:15 2020
carbon.Parse("2020-08-05 13:14:15").ToAnsicStringWithTimezone(carbon.LosAngeles) // Tue Aug  4 22:14:15 2020
// 输出 Atom 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToAtomString() // 2020-08-05T13:14:15+08:00
carbon.Parse("2020-08-05 13:14:15").ToAtomStringWithTimezone(carbon.LosAngeles) // 2020-08-04T22:14:15-07:00
// 输出 UnixDate 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToUnixDateString() // Wed Aug  5 13:14:15 CST 2020
carbon.Parse("2020-08-05 13:14:15").ToUnixDateStringWithTimezone(carbon.LosAngeles) // Tue Aug  4 22:14:15 PDT 2020
// 输出 RubyDate 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRubyDateString() // Wed Aug 05 13:14:15 +0800 2020
carbon.Parse("2020-08-05 13:14:15").ToRubyDateStringWithTimezone(carbon.LosAngeles) // Tue Aug 04 22:14:15 -0700 2020
// 输出 Kitchen 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToKitchenString() // 1:14PM
carbon.Parse("2020-08-05 13:14:15").ToKitchenStringWithTimezone(carbon.LosAngeles) // 10:14PM
// 输出 Cookie 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToCookieString() // Wednesday, 05-Aug-2020 13:14:15 CST
carbon.Parse("2020-08-05 13:14:15").ToCookieStringWithTimezone(carbon.LosAngeles) // Tuesday, 04-Aug-2020 22:14:15 PDT
// 输出 DayDateTime 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToDayDateTimeString() // Wed, Aug 5, 2020 1:14 PM
carbon.Parse("2020-08-05 13:14:15").ToDayDateTimeStringWithTimezone(carbon.LosAngeles) // Tue, Aug 4, 2020 10:14 PM
// 输出 RSS 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRssString() // Wed, 05 Aug 2020 13:14:15 +0800
carbon.Parse("2020-08-05 13:14:15").ToRssStringWithTimezone(carbon.LosAngeles) // Tue, 04 Aug 2020 22:14:15 -0700
// 输出 W3C 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToW3cString() // 2020-08-05T13:14:15+08:00
carbon.Parse("2020-08-05 13:14:15").ToW3cStringWithTimezone(carbon.LosAngeles) // 2020-08-04T22:14:15-07:00

// 输出 RFC822 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRfc822String() // 05 Aug 20 13:14 CST
carbon.Parse("2020-08-05 13:14:15").ToRfc822StringWithTimezone(carbon.LosAngeles) // 04 Aug 20 22:14 PDT
// 输出 RFC822Z 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRfc822zString() // 05 Aug 20 13:14 +0800
carbon.Parse("2020-08-05 13:14:15").ToRfc822zStringWithTimezone(carbon.LosAngeles) // 04 Aug 20 22:14 -0700
// 输出 RFC850 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRfc850String() // Wednesday, 05-Aug-20 13:14:15 CST
carbon.Parse("2020-08-05 13:14:15").ToRfc850StringWithTimezone(carbon.LosAngeles) // Tuesday, 04-Aug-20 22:14:15 PDT
// 输出 RFC1036 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRfc1036String() // Wed, 05 Aug 20 13:14:15 +0800
carbon.Parse("2020-08-05 13:14:15").ToRfc1036StringWithTimezone(carbon.LosAngeles) // Tue, 04 Aug 20 22:14:15 -0700
// 输出 RFC1123 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRfc1123String() // Wed, 05 Aug 2020 13:14:15 CST
carbon.Parse("2020-08-05 13:14:15").ToRfc1123StringWithTimezone() // Tue, 04 Aug 2020 22:14:15 PDT
// 输出 RFC2822 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRfc2822String() // Wed, 05 Aug 2020 13:14:15 +0800
carbon.Parse("2020-08-05 13:14:15").ToRfc2822StringWithTimezone(carbon.LosAngeles) // Tue, 04 Aug 2020 22:14:15 -0700
// 输出 RFC3339 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRfc3339String() // 2020-08-05T13:14:15+08:00
carbon.Parse("2020-08-05 13:14:15").ToRfc3339StringWithTimezone(carbon.LosAngeles) // 2020-08-04T22:14:15-07:00
// 输出 RFC7231 格式字符串
carbon.Parse("2020-08-05 13:14:15").ToRfc7231String() // Wed, 05 Aug 2020 05:14:15 GMT
carbon.Parse("2020-08-05 13:14:15").ToRfc7231StringWithTimezone(carbon.LosAngeles) // Tue, 04 Aug 2020 22:14:15 GMT

// 输出字符串
fmt.Println(carbon.Parse("2020-08-05")) // 2020-08-05 00:00:00
carbon.Parse("2020-08-05 13:14:15").ToString() // 2020-08-05 13:14:15 +0800 CST
// 输出格式化字符串,Format() 是 ToFormatString() 的简写
carbon.Parse("2020-08-05 13:14:15").ToFormatString("YmdHis") // 20200805131415
carbon.Parse("2020-08-05 13:14:15").ToFormatString("Y年m月d H时i分s秒") // 2020年08月05日 13时14分15秒
carbon.Parse("2020-08-05 13:14:15").Format("YmdHis") // 20200805131415
carbon.Parse("2020-08-05 13:14:15").Format("l jS \\o\\f F Y h:i:s A") // Wednesday 5th of August 2020 01:14:15 PM

更多格式化输出符号请查看附录 格式化符号表

时间设置
// 设置时区
carbon.SetTimezone(carbon.PRC).Now().ToDateTimeString() // 2020-08-05 13:14:15
carbon.SetTimezone(carbon.Tokyo).Now().ToDateTimeString() // 2020-08-05 14:14:15
carbon.SetTimezone(carbon.Tokyo).SetTimezone(carbon.PRC).Now().ToDateTimeString() // 2020-08-05 13:14:15

// 设置语言
carbon.Parse("2020-07-05 13:14:15").SetLocale("en").DiffForHumans()) // 1 month ago
carbon.Parse("2020-07-05 13:14:15").SetLocale("zh-CN").DiffForHumans()) // 1 月前

// 设置年
carbon.Parse("2019-08-05").SetYear(2020).ToDateString() // 2020-08-05
carbon.Parse("2020-02-29").SetYear(2019).ToDateString() // 2019-03-01

// 设置月
carbon.Parse("2020-01-31").SetMonth(2).ToDateString() // 2020-03-02
carbon.Parse("2020-08-05").SetMonth(2).ToDateString() // 2020-02-05

// 设置日
carbon.Parse("2019-08-05").SetDay(31).ToDateString() // 2020-08-31
carbon.Parse("2020-02-01").SetDay(31).ToDateString() // 2020-03-02

// 设置时
carbon.Parse("2020-08-05 13:14:15").SetHour(10).ToDateTimeString() // 2020-08-05 10:14:15
carbon.Parse("2020-08-05 13:14:15").SetHour(24).ToDateTimeString() // 2020-08-06 00:14:15

// 设置分
carbon.Parse("2020-08-05 13:14:15").SetMinute(10).ToDateTimeString() // 2020-08-05 13:10:15
carbon.Parse("2020-08-05 13:14:15").SetMinute(60).ToDateTimeString() // 2020-08-05 14:00:15

// 设置秒
carbon.Parse("2020-08-05 13:14:15").SetSecond(10).ToDateTimeString() // 2020-08-05 13:14:10
carbon.Parse("2020-08-05 13:14:15").SetSecond(60).ToDateTimeString() // 2020-08-05 13:15:00
时间获取
// 获取本年总天数
carbon.Parse("2019-08-05 13:14:15").DaysInYear() // 365
carbon.Parse("2020-08-05 13:14:15").DaysInYear() // 366
// 获取本月总天数
carbon.Parse("2020-02-01 13:14:15").DaysInMonth() // 29
carbon.Parse("2020-04-01 13:14:15").DaysInMonth() // 30
carbon.Parse("2020-08-01 13:14:15").DaysInMonth() // 31

// 获取本年第几天
carbon.Parse("2020-08-05 13:14:15").DayOfYear() // 218
// 获取本年第几周
carbon.Parse("2019-12-31 13:14:15").WeekOfYear() // 1
carbon.Parse("2020-08-05 13:14:15").WeekOfYear() // 32

// 获取本月第几天(从1开始)
carbon.Parse("2020-08-05 13:14:15").DayOfMonth() // 5
// 获取本月第几周(从1开始)
carbon.Parse("2020-08-05 13:14:15").WeekOfMonth() // 1
// 获取本周第几天(从1开始)
carbon.Parse("2020-08-05 13:14:15").DayOfWeek() // 3
carbon.Parse("2020-08-09 13:14:15").Week() // 7

// 获取当前世纪
carbon.Parse("2020-08-05 13:14:15").Century() // 21
// 获取当前年份
carbon.Parse("2020-08-05 13:14:15").Year() // 2020
// 获取当前季度
carbon.Parse("2020-08-05 13:14:15").Quarter() // 3
// 获取当前月份
carbon.Parse("2020-08-05 13:14:15").Month() // 8
// 获取当前周(从0开始)
carbon.Parse("2020-08-05 13:14:15").Week() // 3
carbon.Parse("2020-08-09 13:14:15").Week() // 0
// 获取当前天数
carbon.Parse("2020-08-05 13:14:15").Day() // 5
// 获取当前时
carbon.Parse("2020-08-05 13:14:15").Hour() // 13
// 获取当前分钟
carbon.Parse("2020-08-05 13:14:15").Minute() // 14
// 获取当前秒钟
carbon.Parse("2020-08-05 13:14:15").Second() // 15
// 获取当前毫秒
carbon.Parse("2020-08-05 13:14:15").Millisecond() // 1596604455000
// 获取当前微秒
carbon.Parse("2020-08-05 13:14:15").Microsecond() // 1596604455000000
// 获取当前纳秒
carbon.Parse("2020-08-05 13:14:15").Nanosecond() // 1596604455000000000

// 获取时区
carbon.SetTimezone(carbon.PRC).Timezone() // PRC
carbon.SetTimezone(carbon.Tokyo).Timezone() // Asia/Tokyo

// 获取当前语言
carbon.Now().Locale() // en
carbon.Now().SetLocale("zh-CN").Locale() // zh-CN

// 获取当前星座(需要先把lang目录复制到项目目录下)
carbon.Now().Constellation() // Leo
carbon.Now().SetLocale("en").Constellation() // Leo
carbon.Now().SetLocale("zh-CN").Constellation() // 狮子座

// 获取年龄
carbon.Parse("2002-01-01 13:14:15").Age() // 17
carbon.Parse("2002-12-31 13:14:15").Age() // 18

关于第几周的计算如有疑惑请查看 ISO8601标准

农历
// 获取生肖年
carbon.Parse("2020-08-05 13:14:15").AnimalYear() // 鼠
// 获取干支纪年
carbon.Parse("2020-08-05 13:14:15").ToChineseYearString() // 庚子
// 获取干支纪日
carbon.Parse("2020-08-05 13:14:15").ToChineseDayString() // 庚辰

// 是否是鼠年
carbon.Parse("2020-08-05 13:14:15").IsYearOfRat() // true
// 是否是牛年
carbon.Parse("2020-08-05 13:14:15").IsYearOfOx() // false
// 是否是虎年
carbon.Parse("2020-08-05 13:14:15").IsYearOfTiger() // false
// 是否是兔年
carbon.Parse("2020-08-05 13:14:15").IsYearOfRabbit() // false
// 是否是龙年
carbon.Parse("2020-08-05 13:14:15").IsYearOfDragon() // false
// 是否是蛇年
carbon.Parse("2020-08-05 13:14:15").IsYearOfSnake() // false
// 是否是马年
carbon.Parse("2020-08-05 13:14:15").IsYearOfHorse() // false
// 是否是羊年
carbon.Parse("2020-08-05 13:14:15").IsYearOfGoat() // false
// 是否是猴年
carbon.Parse("2020-08-05 13:14:15").IsYearOfMonkey() // false
// 是否是鸡年
carbon.Parse("2020-08-05 13:14:15").IsYearOfRooster() // false
// 是否是狗年
carbon.Parse("2020-08-05 13:14:15").IsYearOfDog() // false
// 是否是猪年
carbon.Parse("2020-08-05 13:14:15").IsYearOfPig() // false
星座
// 获取星座
carbon.Parse("2020-08-05 13:14:15").Constellation() // Leo

// 是否是白羊座
carbon.Parse("2020-08-05 13:14:15").IsAries() // false
// 是否是金牛座
carbon.Parse("2020-08-05 13:14:15").IsTaurus() // false
// 是否是双子座
carbon.Parse("2020-08-05 13:14:15").IsGemini() // false
// 是否是巨蟹座
carbon.Parse("2020-08-05 13:14:15").IsCancer() // false
// 是否是狮子座
carbon.Parse("2020-08-05 13:14:15").IsLeo() // true
// 是否是处女座
carbon.Parse("2020-08-05 13:14:15").IsVirgo() // false
// 是否是天秤座
carbon.Parse("2020-08-05 13:14:15").IsLibra() // false
// 是否是天蝎座
carbon.Parse("2020-08-05 13:14:15").IsScorpio() // false
// 是否是射手座
carbon.Parse("2020-08-05 13:14:15").IsSagittarius() // false
// 是否是摩羯座
carbon.Parse("2020-08-05 13:14:15").IsCapricorn() // false
// 是否是水瓶座
carbon.Parse("2020-08-05 13:14:15").IsAquarius() // false
// 是否是双鱼座
carbon.Parse("2020-08-05 13:14:15").IsPisces() // false
数据库支持

假设数据表为 users,字段有 id(int)、name(varchar)、age(int)、birthday(datetime)、graduated_at(datetime)、created_at(datetime)、updated_at(datetime)、date_time1(datetime)、date_time2(datetime)、date_time3(datetime)、date_time4(datetime)

定义模型
type UserModel struct {
    ID  int64  `json:"id"`
    Name string `json:"name"`
    Age int `json:"age"`
    Birthday carbon.ToDateTimeString `json:"birthday"`
    GraduatedAt carbon.ToDateString `json:"graduated_at"`
    CreatedAt carbon.ToTimeString `json:"created_at"`
    UpdatedAt carbon.ToTimestamp `json:"updated_at"`
    DateTime1 carbon.ToTimestampWithSecond `json:"date_time1"`
    DateTime2 carbon.ToTimestampWithMillisecond `json:"date_time2"`
    DateTime3 carbon.ToTimestampWithMicrosecond `json:"date_time3"`
    DateTime4 carbon.ToTimestampWithNanosecond `json:"date_time4"`
}
实例化模型
user := UserModel {
    ID: 1153,
    Name: "勾国印",
    Age: 18,
    Birthday: carbon.ToDateTimeString{carbon.Now().SubYears(18)},
    GraduatedAt: carbon.ToDateString{carbon.Parse("2012-09-09")},
    CreatedAt: carbon.ToTimeString{carbon.Now()},
    UpdatedAt: carbon.ToTimestamp{carbon.Now()},
    DateTime1: carbon.ToTimestampWithSecond{carbon.Now()},
    DateTime2: carbon.ToTimestampWithMillisecond{carbon.Now()},
    DateTime3: carbon.ToTimestampWithMicrosecond{carbon.Now()},
    DateTime4: carbon.ToTimestampWithNanosecond{carbon.Now()},
}
输出模型字段
user.ID // 1153
user.Name // 勾国印
user.Age // 18
user.Birthday.ToDateTimeString() // 2012-08-05 13:14:15
user.GraduatedAt.ToDateString() // 2012-09-09
user.CreatedAt.ToTimeString() // 13:14:15
user.UpdatedAt.ToTimestamp() // 1596604455
user.DateTime1.ToTimestampWithSecond() // 1596604455
user.DateTime2.ToTimestampWithMillisecond() // 1596604455000
user.DateTime3.ToTimestampWithMicrosecond() // 1596604455000000
user.DateTime4.ToTimestampWithNanosecond() // 1596604455000000000
JSON 输出模型
data, _ := json.Marshal(&user)
fmt.Print(string(data))
// 输出
{
    "id": 1153,
    "name": "勾国印",
    "age": 18,
    "birthday": "2012-08-05 13:14:15",
    "graduated_at": "2012-09-09",
    "created_at": "13:14:15",
    "updated_at": 1596604455,
    "date_time1": 1596604455,
    "date_time2": 1596604455000,
    "date_time3": 1596604455000000,
    "date_time4": 1596604455000000000,
}
输出自定义格式
// 定义输出格式
type ToRssString struct {
    carbon.Carbon
}

// 定义模型
type UserModel struct {
    Birthday carbon.ToRssString `json:"birthday"`
}

// 实例化模型
user := UserModel {
    Birthday: carbon.ToRssString{carbon.Now()},
}

// 重写MarshalJSON方法
func (c ToRssString) MarshalJSON() ([]byte, error) {
	return []byte(fmt.Sprintf(`"%s"`, c.ToRssString())), nil
}

// json.Marshal(&user)输出
{
    "birthday": "Wed, 05 Aug 2020 13:14:15 +0800",
}
国际化

需要使用多语言时,请先把lang目录复制到项目目录下

目前支持的语言有

目前支持的方法有

  • DiffForHumans():输出对人类友好的可读格式时间差
  • ToMonthString():输出完整月份字符串
  • ToShortMonthString():输出缩写月份字符串
  • ToWeekString():输出完整星期字符串
  • ToShortWeekString():输出缩写星期字符串
  • Constellation():获取星座
设置区域
// 方式一(推荐)
c := carbon.Now().AddHours(1).SetLocale("zh-CN") 
if c.Error != nil {
    // 错误处理
    log.Fatal(c.Error)
}
c.DiffForHumans() // 1 小时后
c.ToMonthString() // 八月
c.ToShortMonthString() // 8月
c.ToWeekString() // 星期二
c.ToShortWeekString() // 周二
c.Constellation() // 狮子座

// 方式二
lang := NewLanguage()
if err := lang.SetLocale("zh-CN");err != nil {
	// 错误处理
    log.Fatal(err)
}
c.DiffForHumans() // 1 小时后
c.ToMonthString() // 八月
c.ToShortMonthString() // 8月
c.ToWeekString() // 星期二
c.ToShortWeekString() // 周二
c.Constellation() // 狮子座
设置目录
lang := NewLanguage()
if err := lang.SetDir("lang");err != nil {
	// 错误处理
    log.Fatal(err)
}
c.DiffForHumans() // 1 hour from now
c.ToMonthString() // August
c.ToShortMonthString() // Aug
c.ToWeekString() // Tuesday
c.ToShortWeekString() // Tue
c.Constellation() // Leo
重写部分翻译资源(其余仍然按照指定的 locale 翻译)
lang := NewLanguage()

if err := lang.SetLocale("en");err != nil {
	// 错误处理
    log.Fatal(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
carbon.Now().SetLanguage(lang).ToMonthString() // August
carbon.Now().SetLanguage(lang).ToShortMonthString() // Aug
carbon.Now().SetLanguage(lang).ToWeekString() // Tuesday
carbon.Now().SetLanguage(lang).ToShortWeekString() // Tue
carbon.Now().SetLanguage(lang).Constellation() // Leo
重写全部翻译资源(无需指定 locale)
lang := NewLanguage()
resources := map[string]string {
    "months": "January|February|March|April|May|June|July|August|September|October|November|December",
    "months_short": "Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec",
    "weeks": "Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday",
    "weeks_short": "Sun|Mon|Tue|Wed|Thu|Fri|Sat",
    "constellations": "Aries|Taurus|Gemini|Cancer|Leo|Virgo|Libra|Scorpio|Sagittarius|Capricornus|Aquarius|Pisce",
    "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
carbon.Now().SetLanguage(lang).ToMonthString() // August
carbon.Now().SetLanguage(lang).ToShortMonthString() // Aug
carbon.Now().SetLanguage(lang).ToWeekString() // Tuesday
carbon.Now().SetLanguage(lang).ToShortWeekString() // Tue
carbon.Now().SetLanguage(lang).Constellation() // Leo
错误处理

如果有多个错误发生,只返回第一个错误信息,前一个错误排除后才返回下一个错误信息

场景一
c := carbon.SetTimezone(PRC).Parse("123456")
if c.Error != nil {
    // 错误处理...
    log.Fatal(c.Error)
}
fmt.Println(c.ToDateTimeString())
// 输出
the value "123456" can't parse string as time
场景二
c := carbon.SetTimezone("XXXX").Parse("2020-08-05")
if c.Error != nil {
    // 错误处理...
    log.Fatal(c.Error)
}
fmt.Println(c.ToDateTimeString())
// 输出
invalid timezone "XXXX", please see the $GOROOT/lib/time/zoneinfo.zip file for all valid timezone
场景三
c := carbon.SetTimezone("XXXX").Parse("12345678")
if c.Error != nil {
    // 错误处理...
    log.Fatal(c.Error)
}
fmt.Println(c.ToDateTimeString())
// 输出
invalid timezone "XXXX", please see the $GOROOT/lib/time/zoneinfo.zip file for all valid timezone

建议使用SetTimezone()、Parse()、ParseByFormat()、AddDuration()、SubDuration()、SetLocale()等方法时先进行错误处理判断,除非你能确保传入参数无误

附录
格式化符号表
符号 描述 长度 范围 示例
d 月份中的第几天,有前导零 2 01-31 05
D 缩写单词表示的周几 3 Mon-Sun Wed
j 月份中的第几天,没有前导零 - 1-31 5
S 月份中的第几天,英文缩写后缀,一般和j配合使用 2 st/nd/rd/th th
l 完整单词表示的周几 - Monday-Sunday Wednesday
F 完整单词表示的月份 - January-December August
m 数字表示的月份,有前导零 2 01-12 08
M 缩写单词表示的月份 3 Jan-Dec Aug
n 数字表示的月份,没有前导零 - 1-12 8
y 年份,有前导零 2 00-99 20
Y 年份 4 0000-9999 2020
a 小写的上下午缩写字母 2 am/pm pm
A 大写的上下午缩写字母 2 AM/PM PM
g 小时,12 小时格式,没有前导零 - 1-12 1
G 小时,24 小时格式,没有前导零 - 0-23 15
h 小时,12 小时格式,有前导零 2 00-11 03
H 小时,24 小时格式,有前导零 2 00-23 15
i 分钟,有前导零 2 01-59 14
s 秒数,有前导零 2 01-59 15
c ISO8601 格式的日期 - - 2020-08-05T15:19:21+00:00
r RFC822 格式的日期 - - Thu, 21 Dec 2020 16:01:07 +0200
O 与格林威治时间相差的小时数 - - +0200
P 与格林威治时间相差的小时数,小时和分钟之间有冒号分隔 - - +02:00
T 时区缩写 - - EST
W ISO-8601 格式数字表示的年份中的第几周 - 1-52 42
N ISO-8601 格式数字表示的星期中的第几天 1 1-7 6
L 是否为闰年,如果是闰年为 1,否则为 0 1 0-1 1
U 秒级时间戳 10 - 1611818268
u 毫秒 - - 999
w 数字表示的周几 1 0-6 6
t 月份中的总天数 2 28-31 30
z 年份中的第几天 - 0-365 15
e 时区标识 - - America/New_York
参考项目
相关链接

更新日志

Documentation

Index

Constants

View Source
const (
	Local = "Local"
	CET   = "CET"
	EET   = "EET"
	EST   = "EST"
	GMT   = "GMT"
	UTC   = "UTC"
	UCT   = "UCT"
	MST   = "MST"

	Cuba      = "Cuba"      // 古巴
	Egypt     = "Egypt"     // 埃及
	Eire      = "Eire"      // 爱尔兰
	Greenwich = "Greenwich" // 格林尼治
	Iceland   = "Iceland"   // 冰岛
	Iran      = "Iran"      // 伊朗
	Israel    = "Israel"    // 以色列
	Jamaica   = "Jamaica"   // 牙买加
	Japan     = "Japan"     // 日本
	Libya     = "Libya"     // 利比亚
	Poland    = "Poland"    // 波兰
	Portugal  = "Portugal"  // 葡萄牙
	PRC       = "PRC"       // 中国
	Singapore = "Singapore" // 新加坡
	Turkey    = "Turkey"    // 土耳其

	Shanghai   = "Asia/Shanghai"       // 上海
	Chongqing  = "Asia/Chongqing"      // 重庆
	Harbin     = "Asia/Harbin"         // 哈尔滨
	HongKong   = "Asia/Hong_Kong"      // 香港
	Macao      = "Asia/Macao"          // 澳门
	Taipei     = "Asia/Taipei"         // 台北
	Tokyo      = "Asia/Tokyo"          // 东京
	Saigon     = "Asia/Saigon"         // 西贡
	Seoul      = "Asia/Seoul"          // 首尔
	Bangkok    = "Asia/Bangkok"        // 曼谷
	Dubai      = "Asia/Dubai"          // 迪拜
	NewYork    = "America/New_York"    // 纽约
	LosAngeles = "America/Los_Angeles" // 洛杉矶
	Chicago    = "America/Chicago"     // 芝加哥
	Moscow     = "Europe/Moscow"       // 莫斯科
	London     = "Europe/London"       // 伦敦
	Berlin     = "Europe/Berlin"       // 柏林
	Paris      = "Europe/Paris"        // 巴黎
	Rome       = "Europe/Rome"         // 罗马
)

时区常量

View Source
const (
	January   = "January"   // 一月
	February  = "February"  // 二月
	March     = "March"     // 三月
	April     = "April"     // 四月
	May       = "May"       // 五月
	June      = "June"      // 六月
	July      = "July"      // 七月
	August    = "August"    // 八月
	September = "September" // 九月
	October   = "October"   // 十月
	November  = "November"  // 十一月
	December  = "December"  // 十二月
)

月份常量

View Source
const (
	Monday    = "Monday"    // 周一
	Tuesday   = "Tuesday"   // 周二
	Wednesday = "Wednesday" // 周三
	Thursday  = "Thursday"  // 周四
	Friday    = "Friday"    // 周五
	Saturday  = "Saturday"  // 周六
	Sunday    = "Sunday"    // 周日
)

星期常量

View Source
const (
	YearsPerMillennium = 1000 // 每千年1000年
	YearsPerCentury    = 100  // 每世纪100年
	YearsPerDecade     = 10   // 每十年10年
	QuartersPerYear    = 4    // 每年4季度
	MonthsPerYear      = 12   // 每年12月
	MonthsPerQuarter   = 3    // 每季度3月
	WeeksPerNormalYear = 52   // 每常规年52周

	WeeksPerMonth              = 4       // 每月4周
	DaysPerLeapYear            = 366     // 每闰年366天
	DaysPerNormalYear          = 365     // 每常规年365天
	DaysPerWeek                = 7       // 每周7天
	HoursPerWeek               = 168     // 每周168小时
	HoursPerDay                = 24      // 每天24小时
	MinutesPerDay              = 1440    // 每天1440分钟
	MinutesPerHour             = 60      // 每小时60分钟
	SecondsPerWeek             = 604800  // 每周604800秒
	SecondsPerDay              = 86400   // 每天86400秒
	SecondsPerHour             = 3600    // 每小时3600秒
	SecondsPerMinute           = 60      // 每分钟60秒
	MillisecondsPerSecond      = 1000    // 每秒1000毫秒
	MicrosecondsPerMillisecond = 1000    // 每毫秒1000微秒
	MicrosecondsPerSecond      = 1000000 // 每秒1000000微秒
)

数字常量

View Source
const (
	AnsicFormat         = time.ANSIC
	UnixDateFormat      = time.UnixDate
	RubyDateFormat      = time.RubyDate
	RFC822Format        = time.RFC822
	RFC822ZFormat       = time.RFC822Z
	RFC850Format        = time.RFC850
	RFC1123Format       = time.RFC1123
	RFC1123ZFormat      = time.RFC1123Z
	RssFormat           = time.RFC1123Z
	RFC2822Format       = time.RFC1123Z
	RFC3339Format       = time.RFC3339
	KitchenFormat       = time.Kitchen
	CookieFormat        = "Monday, 02-Jan-2006 15:04:05 MST"
	RFC1036Format       = "Mon, 02 Jan 06 15:04:05 -0700"
	RFC7231Format       = "Mon, 02 Jan 2006 15:04:05 GMT"
	DayDateTimeFormat   = "Mon, Aug 2, 2006 3:04 PM"
	DateTimeFormat      = "2006-01-02 15:04:05"
	DateFormat          = "2006-01-02"
	TimeFormat          = "15:04:05"
	ShortDateTimeFormat = "20060102150405"
	ShortDateFormat     = "20060102"
	ShortTimeFormat     = "150405"
)

时间格式化常量

Variables

This section is empty.

Functions

This section is empty.

Types

type Carbon

type Carbon struct {
	Time  time.Time
	Loc   *time.Location
	Lang  *Language
	Error error
}

Carbon 定义 Carbon 结构体

func CreateFromDate added in v1.2.0

func CreateFromDate(year int, month int, day int) Carbon

CreateFromDate 从年月日创建 Carbon 实例(默认时区)

func CreateFromDateTime added in v1.2.0

func CreateFromDateTime(year int, month int, day int, hour int, minute int, second int) Carbon

CreateFromDateTime 从年月日时分秒创建 Carbon 实例(默认时区)

func CreateFromTime added in v1.2.0

func CreateFromTime(hour int, minute int, second int) Carbon

CreateFromTime 从时分秒创建 Carbon 实例(默认时区)

func CreateFromTimestamp added in v1.2.0

func CreateFromTimestamp(timestamp int64) Carbon

CreateFromTimestamp 从时间戳创建 Carbon 实例(默认时区)

func NewCarbon added in v1.3.9

func NewCarbon() Carbon

NewCarbon 新建 Carbon

func Now added in v1.2.0

func Now() Carbon

Now 当前(默认时区)

func Parse added in v1.2.0

func Parse(value string) Carbon

Parse 将标准格式时间字符串解析成 Carbon 实例(默认时区)

func ParseByFormat added in v1.2.0

func ParseByFormat(value string, format string) Carbon

ParseByFormat 将特殊格式时间字符串解析成 Carbon 实例(默认时区)

func ParseByLayout added in v1.3.0

func ParseByLayout(value string, layout string) Carbon

ParseByLayout 将布局时间字符串解析成 Carbon 实例(默认时区)

func SetLanguage added in v1.3.4

func SetLanguage(lang *Language) Carbon

SetLanguage 设置语言对象

func SetLocale added in v1.3.4

func SetLocale(locale string) Carbon

SetLocale 设置语言区域

func SetTimezone added in v1.2.2

func SetTimezone(name string) Carbon

SetTimezone 设置时区

func Time2Carbon added in v1.3.0

func Time2Carbon(tt time.Time) Carbon

Time2Carbon 将 time.Time 转换成 Carbon

func Tomorrow added in v1.2.0

func Tomorrow() Carbon

Tomorrow 明天(默认时区)

func Yesterday added in v1.2.0

func Yesterday() Carbon

Yesterday 昨天(默认时区)

func (Carbon) AddCenturies added in v1.2.6

func (c Carbon) AddCenturies(centuries int) Carbon

AddCenturies N世纪后

func (Carbon) AddCenturiesNoOverflow added in v1.3.0

func (c Carbon) AddCenturiesNoOverflow(centuries int) Carbon

AddCenturiesNoOverflow N世纪后(月份不溢出)

func (Carbon) AddCentury added in v1.2.6

func (c Carbon) AddCentury() Carbon

AddCentury 1世纪后

func (Carbon) AddCenturyNoOverflow added in v1.3.0

func (c Carbon) AddCenturyNoOverflow() Carbon

AddCenturyNoOverflow 1世纪后(月份不溢出)

func (Carbon) AddDay

func (c Carbon) AddDay() Carbon

AddDay 1天后

func (Carbon) AddDays

func (c Carbon) AddDays(days int) Carbon

AddDays N天后

func (Carbon) AddDuration added in v1.2.4

func (c Carbon) AddDuration(duration string) Carbon

AddDurations 按照持续时间字符串增加时间 支持整数/浮点数和符号ns(纳秒)、us(微妙)、ms(毫秒)、s(秒)、m(分钟)、h(小时)的组合

func (Carbon) AddHour

func (c Carbon) AddHour() Carbon

AddHour 1小时后

func (Carbon) AddHours

func (c Carbon) AddHours(hours int) Carbon

AddHours N小时后

func (Carbon) AddMinute

func (c Carbon) AddMinute() Carbon

AddMinute 1分钟后

func (Carbon) AddMinutes

func (c Carbon) AddMinutes(minutes int) Carbon

AddMinutes N分钟后

func (Carbon) AddMonth

func (c Carbon) AddMonth() Carbon

AddMonth 1月后

func (Carbon) AddMonthNoOverflow added in v1.3.0

func (c Carbon) AddMonthNoOverflow() Carbon

AddMonthNoOverflow 1月后(月份不溢出)

func (Carbon) AddMonths

func (c Carbon) AddMonths(months int) Carbon

AddMonths N月后

func (Carbon) AddMonthsNoOverflow added in v1.3.0

func (c Carbon) AddMonthsNoOverflow(months int) Carbon

AddMonthsNoOverflow N月后(月份不溢出)

func (Carbon) AddQuarter added in v1.2.3

func (c Carbon) AddQuarter() Carbon

AddQuarter 1季度后

func (Carbon) AddQuarterNoOverflow added in v1.3.0

func (c Carbon) AddQuarterNoOverflow() Carbon

NextQuarters 1季度后(月份不溢出)

func (Carbon) AddQuarters added in v1.2.3

func (c Carbon) AddQuarters(quarters int) Carbon

AddQuarters N季度后

func (Carbon) AddQuartersNoOverflow added in v1.3.0

func (c Carbon) AddQuartersNoOverflow(quarters int) Carbon

AddQuartersNoOverflow N季度后(月份不溢出)

func (Carbon) AddSecond

func (c Carbon) AddSecond() Carbon

AddSecond 1秒钟后

func (Carbon) AddSeconds

func (c Carbon) AddSeconds(seconds int) Carbon

AddSeconds N秒钟后

func (Carbon) AddWeek

func (c Carbon) AddWeek() Carbon

AddWeek 1周后

func (Carbon) AddWeeks

func (c Carbon) AddWeeks(weeks int) Carbon

AddWeeks N周后

func (Carbon) AddYear

func (c Carbon) AddYear() Carbon

AddYear 1年后

func (Carbon) AddYearNoOverflow added in v1.3.0

func (c Carbon) AddYearNoOverflow() Carbon

AddYearNoOverflow 1年后(月份不溢出)

func (Carbon) AddYears

func (c Carbon) AddYears(years int) Carbon

AddYears N年后

func (Carbon) AddYearsNoOverflow added in v1.3.0

func (c Carbon) AddYearsNoOverflow(years int) Carbon

AddYearsNoOverflow N年后(月份不溢出)

func (Carbon) Age added in v1.2.1

func (c Carbon) Age() int

Age 获取年龄

func (Carbon) AnimalYear added in v1.3.4

func (c Carbon) AnimalYear() string

AnimalYear 获取生肖年

func (Carbon) Between added in v1.2.4

func (c Carbon) Between(start Carbon, end Carbon) bool

Between 是否在两个时间之间(不包括这两个时间)

func (Carbon) BetweenIncludedBoth added in v1.2.4

func (c Carbon) BetweenIncludedBoth(start Carbon, end Carbon) bool

BetweenIncludedBoth 是否在两个时间之间(包括这两个时间)

func (Carbon) BetweenIncludedEndTime added in v1.2.4

func (c Carbon) BetweenIncludedEndTime(start Carbon, end Carbon) bool

BetweenIncludedEndTime 是否在两个时间之间(包括结束时间)

func (Carbon) BetweenIncludedStartTime added in v1.2.4

func (c Carbon) BetweenIncludedStartTime(start Carbon, end Carbon) bool

BetweenIncludedStartTime 是否在两个时间之间(包括开始时间)

func (Carbon) Carbon2Time added in v1.3.0

func (c Carbon) Carbon2Time() time.Time

Carbon2Time 将 Carbon 转换成 time.Time

func (Carbon) Century added in v1.3.4

func (c Carbon) Century() int

Century 获取当前世纪

func (Carbon) Compare added in v1.2.4

func (c Carbon) Compare(operator string, t Carbon) bool

Compare 时间比较

func (Carbon) Constellation added in v1.3.4

func (c Carbon) Constellation() string

Constellation 获取星座,支持i18n

func (Carbon) CreateFromDate

func (c Carbon) CreateFromDate(year int, month int, day int) Carbon

CreateFromDate 从年月日创建 Carbon 实例

func (Carbon) CreateFromDateTime

func (c Carbon) CreateFromDateTime(year int, month int, day int, hour int, minute int, second int) Carbon

CreateFromDateTime 从年月日时分秒创建 Carbon 实例

func (Carbon) CreateFromTime

func (c Carbon) CreateFromTime(hour int, minute int, second int) Carbon

CreateFromTime 从时分秒创建 Carbon 实例

func (Carbon) CreateFromTimestamp

func (c Carbon) CreateFromTimestamp(timestamp int64) Carbon

CreateFromTimestamp 从时间戳创建 Carbon 实例

func (Carbon) Day added in v1.2.1

func (c Carbon) Day() int

Day 获取当前日

func (Carbon) DayOfMonth added in v1.2.0

func (c Carbon) DayOfMonth() int

DayOfMonth 获取本月的第几天(从1开始)

func (Carbon) DayOfWeek added in v1.2.0

func (c Carbon) DayOfWeek() int

DayOfWeek 获取本周的第几天(从1开始)

func (Carbon) DayOfYear added in v1.2.0

func (c Carbon) DayOfYear() int

DayOfYear 获取本年的第几天(从1开始)

func (Carbon) DaysInMonth added in v1.2.0

func (c Carbon) DaysInMonth() int

DaysInMonth 获取本月的总天数

func (Carbon) DaysInYear added in v1.2.0

func (c Carbon) DaysInYear() int

DaysInYear 获取本年的总天数

func (Carbon) DiffForHumans added in v1.3.1

func (c Carbon) DiffForHumans(arg ...Carbon) string

DiffForHumans 获取对人类友好的可读格式时间差,支持i18n

func (Carbon) DiffInDays added in v1.2.2

func (c Carbon) DiffInDays(arg ...Carbon) int64

DiffInDays 相差多少天

func (Carbon) DiffInDaysWithAbs added in v1.2.4

func (c Carbon) DiffInDaysWithAbs(arg ...Carbon) int64

DiffInDaysWithAbs 相差多少天(绝对值)

func (Carbon) DiffInHours added in v1.2.2

func (c Carbon) DiffInHours(arg ...Carbon) int64

DiffInHours 相差多少小时

func (Carbon) DiffInHoursWithAbs added in v1.2.4

func (c Carbon) DiffInHoursWithAbs(arg ...Carbon) int64

DiffInHoursWithAbs 相差多少小时(绝对值)

func (Carbon) DiffInMinutes added in v1.2.2

func (c Carbon) DiffInMinutes(arg ...Carbon) int64

DiffInMinutes 相差多少分钟

func (Carbon) DiffInMinutesWithAbs added in v1.2.4

func (c Carbon) DiffInMinutesWithAbs(arg ...Carbon) int64

DiffInMinutesWithAbs 相差多少分钟(绝对值)

func (Carbon) DiffInMonths added in v1.3.1

func (c Carbon) DiffInMonths(arg ...Carbon) int64

DiffInMonths 相差多少月

func (Carbon) DiffInMonthsWithAbs added in v1.3.1

func (c Carbon) DiffInMonthsWithAbs(arg ...Carbon) int64

DiffInMonthsWithAbs 相差多少月(绝对值)

func (Carbon) DiffInSeconds added in v1.2.2

func (c Carbon) DiffInSeconds(arg ...Carbon) int64

DiffInSeconds 相差多少秒

func (Carbon) DiffInSecondsWithAbs added in v1.2.4

func (c Carbon) DiffInSecondsWithAbs(arg ...Carbon) int64

DiffInSecondsWithAbs 相差多少秒(绝对值)

func (Carbon) DiffInWeeks added in v1.2.2

func (c Carbon) DiffInWeeks(arg ...Carbon) int64

DiffInWeeks 相差多少周

func (Carbon) DiffInWeeksWithAbs added in v1.2.4

func (c Carbon) DiffInWeeksWithAbs(arg ...Carbon) int64

DiffInWeeksWithAbs 相差多少周(绝对值)

func (Carbon) DiffInYears added in v1.3.1

func (c Carbon) DiffInYears(arg ...Carbon) int64

DiffInYears 相差多少年

func (Carbon) DiffInYearsWithAbs added in v1.3.1

func (c Carbon) DiffInYearsWithAbs(arg ...Carbon) int64

DiffInYearsWithAbs 相差多少年(绝对值)

func (Carbon) EndOfDay

func (c Carbon) EndOfDay() Carbon

EndOfDay 本日结束时间

func (Carbon) EndOfHour added in v1.2.1

func (c Carbon) EndOfHour() Carbon

EndOfHour 小时结束时间

func (Carbon) EndOfMinute added in v1.2.1

func (c Carbon) EndOfMinute() Carbon

EndOfMinute 分钟结束时间

func (Carbon) EndOfMonth

func (c Carbon) EndOfMonth() Carbon

EndOfMonth 本月结束时间

func (Carbon) EndOfSecond added in v1.3.4

func (c Carbon) EndOfSecond() Carbon

EndOfSecond 秒结束时间

func (Carbon) EndOfWeek added in v1.2.1

func (c Carbon) EndOfWeek(weekStartDay time.Weekday) Carbon

EndOfWeek 本周结束时间

func (Carbon) EndOfYear

func (c Carbon) EndOfYear() Carbon

EndOfYear 本年结束时间

func (Carbon) Eq added in v1.2.4

func (c Carbon) Eq(t Carbon) bool

Eq 等于

func (Carbon) Format

func (c Carbon) Format(format string) string

Format ToFormatString的简称

func (Carbon) Gt added in v1.2.4

func (c Carbon) Gt(t Carbon) bool

Gt 大于

func (Carbon) Gte added in v1.2.4

func (c Carbon) Gte(t Carbon) bool

Gte 大于等于

func (Carbon) Hour added in v1.2.1

func (c Carbon) Hour() int

Hour 获取当前小时

func (Carbon) IsApril

func (c Carbon) IsApril() bool

IsApril 是否是四月

func (Carbon) IsAquarius added in v1.3.4

func (c Carbon) IsAquarius() bool

IsAquarius 是否是水瓶座

func (Carbon) IsAries added in v1.3.4

func (c Carbon) IsAries() bool

IsAries 是否是白羊座

func (Carbon) IsAugust

func (c Carbon) IsAugust() bool

IsAugust 是否是八月

func (Carbon) IsCancer added in v1.3.4

func (c Carbon) IsCancer() bool

IsCancer 是否是巨蟹座

func (Carbon) IsCapricorn added in v1.3.4

func (c Carbon) IsCapricorn() bool

IsCapricorn 是否是摩羯座

func (Carbon) IsDecember

func (c Carbon) IsDecember() bool

IsDecember 是否是十二月

func (Carbon) IsFebruary

func (c Carbon) IsFebruary() bool

IsMonday 是否是二月

func (Carbon) IsFriday

func (c Carbon) IsFriday() bool

IsFriday 是否是周五

func (Carbon) IsFuture added in v1.2.0

func (c Carbon) IsFuture() bool

IsFuture 是否是未来时间

func (Carbon) IsGemini added in v1.3.4

func (c Carbon) IsGemini() bool

IsGemini 是否是双子座

func (Carbon) IsJanuary

func (c Carbon) IsJanuary() bool

IsJanuary 是否是一月

func (Carbon) IsJuly

func (c Carbon) IsJuly() bool

IsJuly 是否是七月

func (Carbon) IsJune

func (c Carbon) IsJune() bool

IsJune 是否是六月

func (Carbon) IsLeapYear

func (c Carbon) IsLeapYear() bool

IsLeapYear 是否是闰年

func (Carbon) IsLeo added in v1.3.4

func (c Carbon) IsLeo() bool

IsLeo 是否是狮子座

func (Carbon) IsLibra added in v1.3.4

func (c Carbon) IsLibra() bool

IsLibra 是否是天秤座

func (Carbon) IsLongYear added in v1.2.2

func (c Carbon) IsLongYear() bool

IsLongYear 是否是长年

func (Carbon) IsMarch

func (c Carbon) IsMarch() bool

IsMarch 是否是三月

func (Carbon) IsMay

func (c Carbon) IsMay() bool

IsMay 是否是五月

func (Carbon) IsMonday

func (c Carbon) IsMonday() bool

IsMonday 是否是周一

func (Carbon) IsNovember

func (c Carbon) IsNovember() bool

IsNovember 是否是十一月

func (Carbon) IsNow added in v1.2.1

func (c Carbon) IsNow() bool

IsNow 是否是当前时间

func (Carbon) IsOctober

func (c Carbon) IsOctober() bool

IsOctober 是否是十月

func (Carbon) IsPast added in v1.2.0

func (c Carbon) IsPast() bool

IsPast 是否是过去时间

func (Carbon) IsPisces added in v1.3.4

func (c Carbon) IsPisces() bool

IsPisces 是否是双鱼座

func (Carbon) IsSagittarius added in v1.3.4

func (c Carbon) IsSagittarius() bool

IsSagittarius 是否是射手座

func (Carbon) IsSaturday

func (c Carbon) IsSaturday() bool

IsSaturday 是否是周六

func (Carbon) IsScorpio added in v1.3.4

func (c Carbon) IsScorpio() bool

IsScorpio 是否是天蝎座

func (Carbon) IsSeptember

func (c Carbon) IsSeptember() bool

IsSeptember 是否是九月

func (Carbon) IsSunday

func (c Carbon) IsSunday() bool

IsSunday 是否是周日

func (Carbon) IsTaurus added in v1.3.4

func (c Carbon) IsTaurus() bool

IsTaurus 是否是金牛座

func (Carbon) IsThursday

func (c Carbon) IsThursday() bool

IsThursday 是否是周四

func (Carbon) IsToday

func (c Carbon) IsToday() bool

IsToday 是否是今天

func (Carbon) IsTomorrow

func (c Carbon) IsTomorrow() bool

IsTomorrow 是否是明天

func (Carbon) IsTuesday

func (c Carbon) IsTuesday() bool

IsTuesday 是否是周二

func (Carbon) IsVirgo added in v1.3.4

func (c Carbon) IsVirgo() bool

IsVirgo 是否是处女座

func (Carbon) IsWednesday

func (c Carbon) IsWednesday() bool

IsWednesday 是否是周三

func (Carbon) IsWeekday added in v1.2.0

func (c Carbon) IsWeekday() bool

IsWeekday 是否是工作日

func (Carbon) IsWeekend added in v1.2.0

func (c Carbon) IsWeekend() bool

IsWeekend 是否是周末

func (Carbon) IsYearOfDog

func (c Carbon) IsYearOfDog() bool

IsYearOfDog 是否是狗年

func (Carbon) IsYearOfDragon

func (c Carbon) IsYearOfDragon() bool

IsYearOfDragon 是否是龙年

func (Carbon) IsYearOfGoat

func (c Carbon) IsYearOfGoat() bool

IsYearOfGoat 是否是羊年

func (Carbon) IsYearOfHorse

func (c Carbon) IsYearOfHorse() bool

IsYearOfHorse 是否是马年

func (Carbon) IsYearOfMonkey

func (c Carbon) IsYearOfMonkey() bool

IsYearOfMonkey 是否是猴年

func (Carbon) IsYearOfOx

func (c Carbon) IsYearOfOx() bool

IsYearOfOx 是否是牛年

func (Carbon) IsYearOfPig

func (c Carbon) IsYearOfPig() bool

IsYearOfPig 是否是猪年

func (Carbon) IsYearOfRabbit

func (c Carbon) IsYearOfRabbit() bool

IsYearOfRabbit 是否是兔年

func (Carbon) IsYearOfRat

func (c Carbon) IsYearOfRat() bool

IsYearOfRat 是否是鼠年

func (Carbon) IsYearOfRooster

func (c Carbon) IsYearOfRooster() bool

IsYearOfRooster 是否是鸡年

func (Carbon) IsYearOfSnake

func (c Carbon) IsYearOfSnake() bool

IsYearOfSnake 是否是蛇年

func (Carbon) IsYearOfTiger

func (c Carbon) IsYearOfTiger() bool

IsYearOfTiger 是否是虎年

func (Carbon) IsYesterday

func (c Carbon) IsYesterday() bool

IsYesterday 是否是昨天

func (Carbon) IsZero added in v1.2.0

func (c Carbon) IsZero() bool

IsZero 是否是零值

func (Carbon) Locale added in v1.3.1

func (c Carbon) Locale() string

Locale 获取语言区域

func (Carbon) Lt added in v1.2.4

func (c Carbon) Lt(t Carbon) bool

Lt 小于

func (Carbon) Lte added in v1.2.4

func (c Carbon) Lte(t Carbon) bool

Lte 小于等于

func (Carbon) LunarDay added in v1.3.4

func (c Carbon) LunarDay() int

Todo LunarDay 获取农历日

func (Carbon) LunarMonth added in v1.3.4

func (c Carbon) LunarMonth() int

Todo ToLunarMonth 获取农历月

func (Carbon) LunarYear added in v1.3.4

func (c Carbon) LunarYear() int

Todo ToLunarYear 获取农历年

func (Carbon) Microsecond added in v1.2.3

func (c Carbon) Microsecond() int

Microsecond 获取当前微秒数

func (Carbon) Millisecond added in v1.2.3

func (c Carbon) Millisecond() int

Millisecond 获取当前毫秒数

func (Carbon) Minute added in v1.2.1

func (c Carbon) Minute() int

Minute 获取当前分钟数

func (Carbon) Month added in v1.2.1

func (c Carbon) Month() int

Month 获取当前月

func (Carbon) MonthOfYear added in v1.2.0

func (c Carbon) MonthOfYear() int

MonthOfYear 获取本年的第几月(从1开始)

func (Carbon) Nanosecond added in v1.2.3

func (c Carbon) Nanosecond() int

Nanosecond 获取当前纳秒数

func (Carbon) Ne added in v1.2.4

func (c Carbon) Ne(t Carbon) bool

Ne 不等于

func (Carbon) Now

func (c Carbon) Now() Carbon

Now 当前

func (Carbon) Parse

func (c Carbon) Parse(value string) Carbon

Parse 将标准格式时间字符串解析成 Carbon 实例

func (Carbon) ParseByFormat

func (c Carbon) ParseByFormat(value string, format string) Carbon

ParseByFormat 将特殊格式时间字符串解析成 Carbon 实例

func (Carbon) ParseByLayout added in v1.3.0

func (c Carbon) ParseByLayout(value string, layout string) Carbon

ParseByLayout 将布局时间字符串解析成 Carbon 实例

func (Carbon) Quarter added in v1.2.3

func (c Carbon) Quarter() int

Quarter 获取当前季度

func (*Carbon) Scan

func (c *Carbon) Scan(v interface{}) error

func (Carbon) Second added in v1.2.1

func (c Carbon) Second() int

Second 获取当前秒数

func (Carbon) SetDay added in v1.2.2

func (c Carbon) SetDay(day int) Carbon

SetDay 设置日

func (Carbon) SetHour added in v1.2.2

func (c Carbon) SetHour(hour int) Carbon

SetHour 设置时

func (Carbon) SetLanguage added in v1.3.4

func (c Carbon) SetLanguage(lang *Language) Carbon

SetLanguage 设置语言对象

func (Carbon) SetLocale added in v1.3.1

func (c Carbon) SetLocale(locale string) Carbon

SetLocale 设置语言区域

func (Carbon) SetMicrosecond added in v1.3.7

func (c Carbon) SetMicrosecond(microsecond int) Carbon

SetMicrosecond 设置微秒

func (Carbon) SetMillisecond added in v1.3.7

func (c Carbon) SetMillisecond(millisecond int) Carbon

SetMillisecond 设置毫秒

func (Carbon) SetMinute added in v1.2.2

func (c Carbon) SetMinute(minute int) Carbon

SetMinute 设置分

func (Carbon) SetMonth added in v1.2.2

func (c Carbon) SetMonth(month int) Carbon

SetMonth 设置月

func (Carbon) SetNanosecond added in v1.3.7

func (c Carbon) SetNanosecond(nanosecond int) Carbon

SetNanosecond 设置纳秒

func (Carbon) SetSecond added in v1.2.2

func (c Carbon) SetSecond(second int) Carbon

SetSecond 设置秒

func (Carbon) SetTimezone added in v1.2.2

func (c Carbon) SetTimezone(name string) Carbon

SetTimezone 设置时区

func (Carbon) SetYear added in v1.2.2

func (c Carbon) SetYear(year int) Carbon

SetYear 设置年

func (Carbon) StartOfDay

func (c Carbon) StartOfDay() Carbon

StartOfDay 本日开始时间

func (Carbon) StartOfHour added in v1.2.2

func (c Carbon) StartOfHour() Carbon

StartOfHour 小时开始时间

func (Carbon) StartOfMinute added in v1.2.2

func (c Carbon) StartOfMinute() Carbon

StartOfMinute 分钟开始时间

func (Carbon) StartOfMonth

func (c Carbon) StartOfMonth() Carbon

StartOfMonth 本月开始时间

func (Carbon) StartOfSecond added in v1.3.4

func (c Carbon) StartOfSecond() Carbon

StartOfSecond 秒开始时间

func (Carbon) StartOfWeek added in v1.2.2

func (c Carbon) StartOfWeek(weekStartDay time.Weekday) Carbon

StartOfWeek 本周开始时间

func (Carbon) StartOfYear

func (c Carbon) StartOfYear() Carbon

StartOfYear 本年开始时间

func (Carbon) String added in v1.3.7

func (c Carbon) String() string

String 实现 Stringer 接口

func (Carbon) SubCenturies added in v1.2.6

func (c Carbon) SubCenturies(centuries int) Carbon

SubCenturies N世纪前

func (Carbon) SubCenturiesNoOverflow added in v1.3.0

func (c Carbon) SubCenturiesNoOverflow(centuries int) Carbon

SubCenturiesNoOverflow N世纪前(月份不溢出)

func (Carbon) SubCentury added in v1.2.6

func (c Carbon) SubCentury() Carbon

SubCentury 1世纪前

func (Carbon) SubCenturyNoOverflow added in v1.3.0

func (c Carbon) SubCenturyNoOverflow() Carbon

SubCenturyNoOverflow 1世纪前(月份不溢出)

func (Carbon) SubDay

func (c Carbon) SubDay() Carbon

SubDay 1天前

func (Carbon) SubDays

func (c Carbon) SubDays(days int) Carbon

SubDays N天前

func (Carbon) SubDuration added in v1.2.4

func (c Carbon) SubDuration(duration string) Carbon

SubDurations 按照持续时间字符串减少时间 支持整数/浮点数和符号ns(纳秒)、us(微妙)、ms(毫秒)、s(秒)、m(分钟)、h(小时)的组合

func (Carbon) SubHour

func (c Carbon) SubHour() Carbon

SubHour 1小时前

func (Carbon) SubHours

func (c Carbon) SubHours(hours int) Carbon

SubHours N小时前

func (Carbon) SubMinute

func (c Carbon) SubMinute() Carbon

SubMinute 1分钟前

func (Carbon) SubMinutes

func (c Carbon) SubMinutes(minutes int) Carbon

SubMinutes N分钟前

func (Carbon) SubMonth

func (c Carbon) SubMonth() Carbon

SubMonth 1月前

func (Carbon) SubMonthNoOverflow added in v1.3.0

func (c Carbon) SubMonthNoOverflow() Carbon

SubMonthNoOverflow 1月前(月份不溢出)

func (Carbon) SubMonths

func (c Carbon) SubMonths(months int) Carbon

SubMonths N月前

func (Carbon) SubMonthsNoOverflow added in v1.3.0

func (c Carbon) SubMonthsNoOverflow(months int) Carbon

SubMonthsNoOverflow N月前(月份不溢出)

func (Carbon) SubQuarter added in v1.2.3

func (c Carbon) SubQuarter() Carbon

SubQuarter 1季度前

func (Carbon) SubQuarterNoOverflow added in v1.3.0

func (c Carbon) SubQuarterNoOverflow() Carbon

SubQuarterNoOverflow 1季度前(月份不溢出)

func (Carbon) SubQuarters added in v1.2.3

func (c Carbon) SubQuarters(quarters int) Carbon

SubQuarters N季度前

func (Carbon) SubQuartersNoOverflow added in v1.3.0

func (c Carbon) SubQuartersNoOverflow(quarters int) Carbon

SubQuartersNoOverflow N季度前(月份不溢出)

func (Carbon) SubSecond

func (c Carbon) SubSecond() Carbon

SubSecond 1秒钟前

func (Carbon) SubSeconds

func (c Carbon) SubSeconds(seconds int) Carbon

SubSeconds N秒钟前

func (Carbon) SubWeek

func (c Carbon) SubWeek() Carbon

SubWeek 1周前

func (Carbon) SubWeeks

func (c Carbon) SubWeeks(weeks int) Carbon

SubWeeks N周前

func (Carbon) SubYear

func (c Carbon) SubYear() Carbon

SubYear 1年前

func (Carbon) SubYearNoOverflow added in v1.3.0

func (c Carbon) SubYearNoOverflow() Carbon

SubYearNoOverflow 1年前(月份不溢出)

func (Carbon) SubYears

func (c Carbon) SubYears(years int) Carbon

SubYears N年前

func (Carbon) SubYearsNoOverflow added in v1.3.0

func (c Carbon) SubYearsNoOverflow(years int) Carbon

SubYearsNoOverflow N年前(月份不溢出)

func (Carbon) Timezone

func (c Carbon) Timezone() string

Timezone 获取时区

func (Carbon) ToAnsicString added in v1.2.0

func (c Carbon) ToAnsicString() string

ToAnsicString 输出Ansic格式字符串

func (Carbon) ToAnsicStringWithTimezone added in v1.3.8

func (c Carbon) ToAnsicStringWithTimezone(timezone string) string

ToAnsicStringWithTimezone 输出指定时区的Ansic格式字符串

func (Carbon) ToAtomString added in v1.2.0

func (c Carbon) ToAtomString() string

ToAtomString 输出Atom格式字符串

func (Carbon) ToAtomStringWithTimezone added in v1.3.8

func (c Carbon) ToAtomStringWithTimezone(timezone string) string

ToAtomStringWithTimezone 输出指定时区的Atom格式字符串

func (Carbon) ToChineseDateString added in v1.3.4

func (c Carbon) ToChineseDateString() string

Todo ToChineseHourString 输出天干地支日期

func (Carbon) ToChineseDayString added in v1.3.4

func (c Carbon) ToChineseDayString() string

ToChineseDayString 输出天干地支纪日(根据高氏日柱公式v3版)

func (Carbon) ToChineseMonthString added in v1.3.4

func (c Carbon) ToChineseMonthString() string

Todo ToChineseMonthString 输出天干地支纪月

func (Carbon) ToChineseYearString added in v1.3.4

func (c Carbon) ToChineseYearString() string

ToChineseYearString 输出天干地支纪年

func (Carbon) ToCookieString added in v1.2.0

func (c Carbon) ToCookieString() string

ToCookieString 输出Cookie格式字符串

func (Carbon) ToCookieStringWithTimezone added in v1.3.8

func (c Carbon) ToCookieStringWithTimezone(timezone string) string

ToCookieStringWithTimezone 输出指定时区的Cookie格式字符串

func (Carbon) ToDateString

func (c Carbon) ToDateString() string

ToDateString 输出日期字符串

func (Carbon) ToDateStringWithTimezone added in v1.3.8

func (c Carbon) ToDateStringWithTimezone(timezone string) string

ToDateStringWithTimezone 输出指定时区的日期字符串

func (Carbon) ToDateTimeString

func (c Carbon) ToDateTimeString() string

ToDateTimeString 输出日期时间字符串

func (Carbon) ToDateTimeStringWithTimezone added in v1.3.8

func (c Carbon) ToDateTimeStringWithTimezone(timezone string) string

ToDateTimeStringWithTimezone 输出指定时区的日期时间字符串

func (Carbon) ToDayDateTimeString added in v1.2.0

func (c Carbon) ToDayDateTimeString() string

ToDayDateTimeString 输出天数日期时间字符串

func (Carbon) ToDayDateTimeStringWithTimezone added in v1.3.8

func (c Carbon) ToDayDateTimeStringWithTimezone(timezone string) string

ToDayDateTimeStringWithTimezone 输出指定时区的天数日期时间字符串

func (Carbon) ToFormatString added in v1.2.0

func (c Carbon) ToFormatString(format string) string

ToFormatString 输出指定格式时间

func (Carbon) ToKitchenString added in v1.2.0

func (c Carbon) ToKitchenString() string

ToKitchenString 输出Kitchen格式字符串

func (Carbon) ToKitchenStringWithTimezone added in v1.3.8

func (c Carbon) ToKitchenStringWithTimezone(timezone string) string

ToKitchenStringWithTimezone 输出指定时区的Kitchen格式字符串

func (Carbon) ToLunarDateString added in v1.3.4

func (c Carbon) ToLunarDateString() string

Todo ToLunarDateString 输出农历日期

func (Carbon) ToLunarDayString added in v1.3.4

func (c Carbon) ToLunarDayString() string

Todo ToLunarDayString 输出农历日

func (Carbon) ToLunarMonthString added in v1.3.4

func (c Carbon) ToLunarMonthString() string

Todo ToLunarDayString 输出农历月

func (Carbon) ToLunarYearString added in v1.3.4

func (c Carbon) ToLunarYearString() string

Todo ToLunarYearString 输出农历年

func (Carbon) ToMonthString added in v1.3.4

func (c Carbon) ToMonthString() string

ToMonthString 输出完整月份字符串,支持i18n

func (Carbon) ToRfc1036String added in v1.3.0

func (c Carbon) ToRfc1036String() string

ToRfc1036String 输出RFC1036格式字符串

func (Carbon) ToRfc1036StringWithTimezone added in v1.3.8

func (c Carbon) ToRfc1036StringWithTimezone(timezone string) string

ToRfc1036StringWithTimezone 输出指定时区的RFC1036格式字符串

func (Carbon) ToRfc1123String added in v1.3.0

func (c Carbon) ToRfc1123String() string

ToRfc1123String 输出RFC1123格式字符串

func (Carbon) ToRfc1123StringWithTimezone added in v1.3.8

func (c Carbon) ToRfc1123StringWithTimezone(timezone string) string

ToRfc1123StringWithTimezone 输出指定时区的RFC1123格式字符串

func (Carbon) ToRfc1123ZString added in v1.3.0

func (c Carbon) ToRfc1123ZString() string

ToRfc1123ZString 输出RFC1123Z格式字符串

func (Carbon) ToRfc1123ZStringWithTimezone added in v1.3.8

func (c Carbon) ToRfc1123ZStringWithTimezone(timezone string) string

ToRfc1123ZStringWithTimezone 输出指定时区的RFC1123Z格式字符串

func (Carbon) ToRfc2822String added in v1.3.0

func (c Carbon) ToRfc2822String() string

ToRfc2822String 输出RFC2822格式字符串

func (Carbon) ToRfc2822StringWithTimezone added in v1.3.8

func (c Carbon) ToRfc2822StringWithTimezone(timezone string) string

ToRfc2822StringWithTimezone 输出指定时区的RFC2822格式字符串

func (Carbon) ToRfc3339String added in v1.3.0

func (c Carbon) ToRfc3339String() string

ToRfc3339String 输出RFC3339格式字符串

func (Carbon) ToRfc3339StringWithTimezone added in v1.3.8

func (c Carbon) ToRfc3339StringWithTimezone(timezone string) string

ToRfc3339StringWithTimezone 输出指定时区的RFC3339格式字符串

func (Carbon) ToRfc7231String added in v1.3.0

func (c Carbon) ToRfc7231String() string

ToRfc7231String 输出RFC7231格式字符串

func (Carbon) ToRfc7231StringWithTimezone added in v1.3.8

func (c Carbon) ToRfc7231StringWithTimezone(timezone string) string

ToRfc7231StringWithTimezone 输出指定时区的RFC7231格式字符串

func (Carbon) ToRfc822String added in v1.3.0

func (c Carbon) ToRfc822String() string

ToRfc822String 输出RFC822格式字符串

func (Carbon) ToRfc822StringWithTimezone added in v1.3.8

func (c Carbon) ToRfc822StringWithTimezone(timezone string) string

ToRfc822StringWithTimezone 输出指定时区的RFC822格式字符串

func (Carbon) ToRfc822zString added in v1.3.0

func (c Carbon) ToRfc822zString() string

ToRfc822zString 输出RFC822Z格式字符串

func (Carbon) ToRfc822zStringWithTimezone added in v1.3.8

func (c Carbon) ToRfc822zStringWithTimezone(timezone string) string

ToRfc822zStringWithTimezone 输出指定时区的RFC822Z格式字符串

func (Carbon) ToRfc850String added in v1.3.0

func (c Carbon) ToRfc850String() string

ToRfc850String 输出RFC850格式字符串

func (Carbon) ToRfc850StringWithTimezone added in v1.3.8

func (c Carbon) ToRfc850StringWithTimezone(timezone string) string

ToRfc850StringWithTimezone 输出指定时区的RFC850格式字符串

func (Carbon) ToRssString added in v1.2.0

func (c Carbon) ToRssString() string

ToRssString 输出RSS格式字符串

func (Carbon) ToRssStringWithTimezone added in v1.3.8

func (c Carbon) ToRssStringWithTimezone(timezone string) string

ToRssStringWithTimezone 输出指定时区的RSS格式字符串

func (Carbon) ToRubyDateString added in v1.2.0

func (c Carbon) ToRubyDateString() string

ToUnixDateString 输出RubyDate格式字符串

func (Carbon) ToRubyDateStringWithTimezone added in v1.3.8

func (c Carbon) ToRubyDateStringWithTimezone(timezone string) string

ToUnixDateStringWithTimezone 输出指定时区的RubyDate格式字符串

func (Carbon) ToShortLunarDateString added in v1.3.4

func (c Carbon) ToShortLunarDateString() string

Todo ToShortLunarDateString 输出简写农历日期

func (Carbon) ToShortMonthString added in v1.3.4

func (c Carbon) ToShortMonthString() string

ToShortMonthString 输出缩写月份字符串,支持i18n

func (Carbon) ToShortWeekString added in v1.3.4

func (c Carbon) ToShortWeekString() string

ToShortWeekString 输出缩写星期字符串,支持i18n

func (Carbon) ToString added in v1.2.0

func (c Carbon) ToString() string

ToString 输出"2006-01-02 15:04:05.999999999 -0700 MST"格式字符串

func (Carbon) ToTimeString

func (c Carbon) ToTimeString() string

ToTimeString 输出时间字符串

func (Carbon) ToTimeStringWithTimezone added in v1.3.8

func (c Carbon) ToTimeStringWithTimezone(timezone string) string

ToTimeStringWithTimezone 输出指定时区的时间字符串

func (Carbon) ToTimestamp

func (c Carbon) ToTimestamp() int64

ToTimestamp ToTimestampWithSecond的简称

func (Carbon) ToTimestampWithMicrosecond added in v1.2.3

func (c Carbon) ToTimestampWithMicrosecond() int64

ToTimestampWithMicrosecond 输出微秒级时间戳

func (Carbon) ToTimestampWithMillisecond added in v1.2.3

func (c Carbon) ToTimestampWithMillisecond() int64

ToTimestampWithMillisecond 输出毫秒级时间戳

func (Carbon) ToTimestampWithNanosecond added in v1.2.3

func (c Carbon) ToTimestampWithNanosecond() int64

ToTimestampWithNanosecond 输出纳秒级时间戳

func (Carbon) ToTimestampWithSecond added in v1.2.3

func (c Carbon) ToTimestampWithSecond() int64

ToTimestampWithSecond 输出秒级时间戳

func (Carbon) ToUnixDateString added in v1.2.0

func (c Carbon) ToUnixDateString() string

ToUnixDateString 输出UnixDate格式字符串

func (Carbon) ToUnixDateStringWithTimezone added in v1.3.8

func (c Carbon) ToUnixDateStringWithTimezone(timezone string) string

ToUnixDateStringWithTimezone 输出指定时区的UnixDate格式字符串

func (Carbon) ToUtcString added in v1.3.7

func (c Carbon) ToUtcString() string

ToUtcString 输出0时区时间字符串

func (Carbon) ToW3cString added in v1.2.0

func (c Carbon) ToW3cString() string

ToW3cString 输出W3C格式字符串

func (Carbon) ToW3cStringWithTimezone added in v1.3.8

func (c Carbon) ToW3cStringWithTimezone(timezone string) string

ToW3cStringWithTimezone 输出指定时区的W3C格式字符串

func (Carbon) ToWeekString added in v1.3.4

func (c Carbon) ToWeekString() string

ToWeekString 输出完整星期字符串,支持i18n

func (Carbon) Tomorrow

func (c Carbon) Tomorrow() Carbon

Tomorrow 明天

func (Carbon) Value

func (c Carbon) Value() (driver.Value, error)

func (Carbon) Week added in v1.3.4

func (c Carbon) Week() int

Week 获取当前周(从0开始)

func (Carbon) WeekOfMonth added in v1.2.0

func (c Carbon) WeekOfMonth() int

WeekOfMonth 获取本月的第几周(从1开始)

func (Carbon) WeekOfYear added in v1.2.0

func (c Carbon) WeekOfYear() int

WeekOfYear 获取本年的第几周(从1开始)

func (Carbon) Year added in v1.2.1

func (c Carbon) Year() int

Year 获取当前年

func (Carbon) Yesterday

func (c Carbon) Yesterday() Carbon

Yesterday 昨天

type Language added in v1.3.1

type Language struct {
	// contains filtered or unexported fields
}

func NewLanguage added in v1.3.1

func NewLanguage() *Language

NewLanguage 初始化 Language 实例

func (*Language) SetDir added in v1.3.4

func (lang *Language) SetDir(dir string) error

SetDir 设置目录

func (*Language) SetLocale added in v1.3.1

func (lang *Language) SetLocale(locale string) error

SetLocale 设置区域

func (*Language) SetResources added in v1.3.4

func (lang *Language) SetResources(resources map[string]string)

SetResources 设置资源

type ToDateString

type ToDateString struct {
	Carbon
}

func (ToDateString) MarshalJSON

func (c ToDateString) MarshalJSON() ([]byte, error)

type ToDateTimeString

type ToDateTimeString struct {
	Carbon
}

func (ToDateTimeString) MarshalJSON

func (c ToDateTimeString) MarshalJSON() ([]byte, error)

type ToTimeString

type ToTimeString struct {
	Carbon
}

func (ToTimeString) MarshalJSON

func (c ToTimeString) MarshalJSON() ([]byte, error)

type ToTimestamp

type ToTimestamp struct {
	Carbon
}

func (ToTimestamp) MarshalJSON

func (c ToTimestamp) MarshalJSON() ([]byte, error)

type ToTimestampWithMicrosecond added in v1.2.4

type ToTimestampWithMicrosecond struct {
	Carbon
}

func (ToTimestampWithMicrosecond) MarshalJSON added in v1.2.4

func (c ToTimestampWithMicrosecond) MarshalJSON() ([]byte, error)

type ToTimestampWithMillisecond added in v1.2.4

type ToTimestampWithMillisecond struct {
	Carbon
}

func (ToTimestampWithMillisecond) MarshalJSON added in v1.2.4

func (c ToTimestampWithMillisecond) MarshalJSON() ([]byte, error)

type ToTimestampWithNanosecond added in v1.2.4

type ToTimestampWithNanosecond struct {
	Carbon
}

func (ToTimestampWithNanosecond) MarshalJSON added in v1.2.4

func (c ToTimestampWithNanosecond) MarshalJSON() ([]byte, error)

type ToTimestampWithSecond added in v1.2.4

type ToTimestampWithSecond struct {
	Carbon
}

func (ToTimestampWithSecond) MarshalJSON added in v1.2.4

func (c ToTimestampWithSecond) MarshalJSON() ([]byte, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL