Documentation
¶
Overview ¶
Package carbon is a simple, semantic and developer-friendly time package for golang.
Index ¶
- Constants
- Variables
- func ClearTestNow()
- func IsTestNow() bool
- func ResetDefault()
- func SetDefault(d Default)
- func SetTestNow(c *Carbon)
- func Sleep(d time.Duration)
- type Carbon
- func CreateFromDate(year, month, day int, timezone ...string) *Carbon
- func CreateFromDateMicro(year, month, day, microsecond int, timezone ...string) *Carbon
- func CreateFromDateMilli(year, month, day, millisecond int, timezone ...string) *Carbon
- func CreateFromDateNano(year, month, day, nanosecond int, timezone ...string) *Carbon
- func CreateFromDateTime(year, month, day, hour, minute, second int, timezone ...string) *Carbon
- func CreateFromDateTimeMicro(year, month, day, hour, minute, second, microsecond int, timezone ...string) *Carbon
- func CreateFromDateTimeMilli(year, month, day, hour, minute, second, millisecond int, timezone ...string) *Carbon
- func CreateFromDateTimeNano(year, month, day, hour, minute, second, nanosecond int, timezone ...string) *Carbon
- func CreateFromHebrew(year, month, day int) *Carbon
- func CreateFromJulian(f float64) *Carbon
- func CreateFromLunar(year, month, day int, isLeapMonth bool) *Carbon
- func CreateFromPersian(year, month, day int) *Carbon
- func CreateFromStdTime(stdTime StdTime, timezone ...string) *Carbon
- func CreateFromTime(hour, minute, second int, timezone ...string) *Carbon
- func CreateFromTimeMicro(hour, minute, second, microsecond int, timezone ...string) *Carbon
- func CreateFromTimeMilli(hour, minute, second, millisecond int, timezone ...string) *Carbon
- func CreateFromTimeNano(hour, minute, second, nanosecond int, timezone ...string) *Carbon
- func CreateFromTimestamp(timestamp int64, timezone ...string) *Carbon
- func CreateFromTimestampMicro(timestampMicro int64, timezone ...string) *Carbon
- func CreateFromTimestampMilli(timestampMilli int64, timezone ...string) *Carbon
- func CreateFromTimestampNano(timestampNano int64, timezone ...string) *Carbon
- func EpochValue() *Carbon
- func Max(c1 *Carbon, c2 ...*Carbon) (c *Carbon)
- func MaxValue() *Carbon
- func Min(c1 *Carbon, c2 ...*Carbon) (c *Carbon)
- func MinValue() *Carbon
- func NewCarbon(stdTime ...StdTime) *Carbon
- func Now(timezone ...string) *Carbon
- func Parse(value string, timezone ...string) *Carbon
- func ParseByFormat(value, format string, timezone ...string) *Carbon
- func ParseByFormats(value string, formats []string, timezone ...string) *Carbon
- func ParseByLayout(value, layout string, timezone ...string) *Carbon
- func ParseByLayouts(value string, layouts []string, timezone ...string) *Carbon
- func SetFormat(format string) *Carbon
- func SetLayout(layout string) *Carbon
- func SetLocale(locale string) *Carbon
- func SetLocation(loc *Location) *Carbon
- func SetTimezone(name string) *Carbon
- func SetWeekStartsAt(weekday Weekday) *Carbon
- func SetWeekendDays(weekDays []Weekday) *Carbon
- func Tomorrow(timezone ...string) *Carbon
- func Yesterday(timezone ...string) *Carbon
- func ZeroValue() *Carbon
- func (c *Carbon) AddCenturies(centuries int) *Carbon
- func (c *Carbon) AddCenturiesNoOverflow(centuries int) *Carbon
- func (c *Carbon) AddCentury() *Carbon
- func (c *Carbon) AddCenturyNoOverflow() *Carbon
- func (c *Carbon) AddDay() *Carbon
- func (c *Carbon) AddDays(days int) *Carbon
- func (c *Carbon) AddDecade() *Carbon
- func (c *Carbon) AddDecadeNoOverflow() *Carbon
- func (c *Carbon) AddDecades(decades int) *Carbon
- func (c *Carbon) AddDecadesNoOverflow(decades int) *Carbon
- func (c *Carbon) AddDuration(duration string) *Carbon
- func (c *Carbon) AddHour() *Carbon
- func (c *Carbon) AddHours(hours int) *Carbon
- func (c *Carbon) AddMicrosecond() *Carbon
- func (c *Carbon) AddMicroseconds(microseconds int) *Carbon
- func (c *Carbon) AddMillisecond() *Carbon
- func (c *Carbon) AddMilliseconds(milliseconds int) *Carbon
- func (c *Carbon) AddMinute() *Carbon
- func (c *Carbon) AddMinutes(minutes int) *Carbon
- func (c *Carbon) AddMonth() *Carbon
- func (c *Carbon) AddMonthNoOverflow() *Carbon
- func (c *Carbon) AddMonths(months int) *Carbon
- func (c *Carbon) AddMonthsNoOverflow(months int) *Carbon
- func (c *Carbon) AddNanosecond() *Carbon
- func (c *Carbon) AddNanoseconds(nanoseconds int) *Carbon
- func (c *Carbon) AddQuarter() *Carbon
- func (c *Carbon) AddQuarterNoOverflow() *Carbon
- func (c *Carbon) AddQuarters(quarters int) *Carbon
- func (c *Carbon) AddQuartersNoOverflow(quarters int) *Carbon
- func (c *Carbon) AddSecond() *Carbon
- func (c *Carbon) AddSeconds(seconds int) *Carbon
- func (c *Carbon) AddWeek() *Carbon
- func (c *Carbon) AddWeeks(weeks int) *Carbon
- func (c *Carbon) AddYear() *Carbon
- func (c *Carbon) AddYearNoOverflow() *Carbon
- func (c *Carbon) AddYears(years int) *Carbon
- func (c *Carbon) AddYearsNoOverflow(years int) *Carbon
- func (c *Carbon) Age() int
- func (c *Carbon) Between(start *Carbon, end *Carbon) bool
- func (c *Carbon) BetweenIncludedBoth(start *Carbon, end *Carbon) bool
- func (c *Carbon) BetweenIncludedEnd(start *Carbon, end *Carbon) bool
- func (c *Carbon) BetweenIncludedStart(start *Carbon, end *Carbon) bool
- func (c *Carbon) Century() int
- func (c *Carbon) Closest(c1 *Carbon, c2 ...*Carbon) *Carbon
- func (c *Carbon) Compare(operator string, t *Carbon) bool
- func (c *Carbon) Constellation() string
- func (c *Carbon) Copy() *Carbon
- func (c *Carbon) CurrentLayout() string
- func (c *Carbon) Date() (year, month, day int)
- func (c *Carbon) DateMicro() (year, month, day, microsecond int)
- func (c *Carbon) DateMilli() (year, month, day, millisecond int)
- func (c *Carbon) DateNano() (year, month, day, nanosecond int)
- func (c *Carbon) DateTime() (year, month, day, hour, minute, second int)
- func (c *Carbon) DateTimeMicro() (year, month, day, hour, minute, second, microsecond int)
- func (c *Carbon) DateTimeMilli() (year, month, day, hour, minute, second, millisecond int)
- func (c *Carbon) DateTimeNano() (year, month, day, hour, minute, second, nanosecond int)
- func (c *Carbon) Day() int
- func (c *Carbon) DayOfMonth() int
- func (c *Carbon) DayOfWeek() int
- func (c *Carbon) DayOfYear() int
- func (c *Carbon) DaysInMonth() int
- func (c *Carbon) DaysInYear() int
- func (c *Carbon) Decade() int
- func (c *Carbon) DiffAbsInDays(carbon ...*Carbon) int64
- func (c *Carbon) DiffAbsInDuration(carbon ...*Carbon) Duration
- func (c *Carbon) DiffAbsInHours(carbon ...*Carbon) int64
- func (c *Carbon) DiffAbsInMinutes(carbon ...*Carbon) int64
- func (c *Carbon) DiffAbsInMonths(carbon ...*Carbon) int64
- func (c *Carbon) DiffAbsInSeconds(carbon ...*Carbon) int64
- func (c *Carbon) DiffAbsInString(carbon ...*Carbon) string
- func (c *Carbon) DiffAbsInWeeks(carbon ...*Carbon) int64
- func (c *Carbon) DiffAbsInYears(carbon ...*Carbon) int64
- func (c *Carbon) DiffForHumans(carbon ...*Carbon) string
- func (c *Carbon) DiffInDays(carbon ...*Carbon) int64
- func (c *Carbon) DiffInDuration(carbon ...*Carbon) Duration
- func (c *Carbon) DiffInHours(carbon ...*Carbon) int64
- func (c *Carbon) DiffInMinutes(carbon ...*Carbon) int64
- func (c *Carbon) DiffInMonths(carbon ...*Carbon) int64
- func (c *Carbon) DiffInSeconds(carbon ...*Carbon) int64
- func (c *Carbon) DiffInString(carbon ...*Carbon) string
- func (c *Carbon) DiffInWeeks(carbon ...*Carbon) int64
- func (c *Carbon) DiffInYears(carbon ...*Carbon) int64
- func (c *Carbon) EndOfCentury() *Carbon
- func (c *Carbon) EndOfDay() *Carbon
- func (c *Carbon) EndOfDecade() *Carbon
- func (c *Carbon) EndOfHour() *Carbon
- func (c *Carbon) EndOfMinute() *Carbon
- func (c *Carbon) EndOfMonth() *Carbon
- func (c *Carbon) EndOfQuarter() *Carbon
- func (c *Carbon) EndOfSeason() *Carbon
- func (c *Carbon) EndOfSecond() *Carbon
- func (c *Carbon) EndOfWeek() *Carbon
- func (c *Carbon) EndOfYear() *Carbon
- func (c *Carbon) Eq(t *Carbon) bool
- func (c *Carbon) Farthest(c1 *Carbon, c2 ...*Carbon) *Carbon
- func (c *Carbon) Format(format string, timezone ...string) string
- func (c *Carbon) GoString() string
- func (c *Carbon) Gt(t *Carbon) bool
- func (c *Carbon) Gte(t *Carbon) bool
- func (c *Carbon) HasError() bool
- func (c *Carbon) Hebrew() *hebrew.Hebrew
- func (c *Carbon) Hour() int
- func (c *Carbon) IsAM() bool
- func (c *Carbon) IsApril() bool
- func (c *Carbon) IsAquarius() bool
- func (c *Carbon) IsAries() bool
- func (c *Carbon) IsAugust() bool
- func (c *Carbon) IsAutumn() bool
- func (c *Carbon) IsCancer() bool
- func (c *Carbon) IsCapricorn() bool
- func (c *Carbon) IsDST() bool
- func (c *Carbon) IsDecember() bool
- func (c *Carbon) IsEmpty() bool
- func (c *Carbon) IsEpoch() bool
- func (c *Carbon) IsFebruary() bool
- func (c *Carbon) IsFriday() bool
- func (c *Carbon) IsFuture() bool
- func (c *Carbon) IsGemini() bool
- func (c *Carbon) IsInvalid() bool
- func (c *Carbon) IsJanuary() bool
- func (c *Carbon) IsJuly() bool
- func (c *Carbon) IsJune() bool
- func (c *Carbon) IsLeapYear() bool
- func (c *Carbon) IsLeo() bool
- func (c *Carbon) IsLibra() bool
- func (c *Carbon) IsLongYear() bool
- func (c *Carbon) IsMarch() bool
- func (c *Carbon) IsMay() bool
- func (c *Carbon) IsMonday() bool
- func (c *Carbon) IsNil() bool
- func (c *Carbon) IsNovember() bool
- func (c *Carbon) IsNow() bool
- func (c *Carbon) IsOctober() bool
- func (c *Carbon) IsPM() bool
- func (c *Carbon) IsPast() bool
- func (c *Carbon) IsPisces() bool
- func (c *Carbon) IsSagittarius() bool
- func (c *Carbon) IsSameCentury(t *Carbon) bool
- func (c *Carbon) IsSameDay(t *Carbon) bool
- func (c *Carbon) IsSameDecade(t *Carbon) bool
- func (c *Carbon) IsSameHour(t *Carbon) bool
- func (c *Carbon) IsSameMinute(t *Carbon) bool
- func (c *Carbon) IsSameMonth(t *Carbon) bool
- func (c *Carbon) IsSameQuarter(t *Carbon) bool
- func (c *Carbon) IsSameSecond(t *Carbon) bool
- func (c *Carbon) IsSameYear(t *Carbon) bool
- func (c *Carbon) IsSaturday() bool
- func (c *Carbon) IsScorpio() bool
- func (c *Carbon) IsSeptember() bool
- func (c *Carbon) IsSpring() bool
- func (c *Carbon) IsSummer() bool
- func (c *Carbon) IsSunday() bool
- func (c *Carbon) IsTaurus() bool
- func (c *Carbon) IsThursday() bool
- func (c *Carbon) IsToday() bool
- func (c *Carbon) IsTomorrow() bool
- func (c *Carbon) IsTuesday() bool
- func (c *Carbon) IsValid() bool
- func (c *Carbon) IsVirgo() bool
- func (c *Carbon) IsWednesday() bool
- func (c *Carbon) IsWeekday() bool
- func (c *Carbon) IsWeekend() bool
- func (c *Carbon) IsWinter() bool
- func (c *Carbon) IsYesterday() bool
- func (c *Carbon) IsZero() bool
- func (c *Carbon) Julian() *julian.Julian
- func (c *Carbon) Layout(layout string, timezone ...string) string
- func (c *Carbon) Locale() string
- func (c *Carbon) Lt(t *Carbon) bool
- func (c *Carbon) Lte(t *Carbon) bool
- func (c *Carbon) Lunar() *lunar.Lunar
- func (c Carbon) MarshalJSON() ([]byte, error)
- func (c *Carbon) Microsecond() int
- func (c *Carbon) Millisecond() int
- func (c *Carbon) Minute() int
- func (c *Carbon) Month() int
- func (c *Carbon) MonthOfYear() int
- func (c *Carbon) Nanosecond() int
- func (c *Carbon) Ne(t *Carbon) bool
- func (c *Carbon) Persian() *persian.Persian
- func (c *Carbon) Quarter() (quarter int)
- func (c *Carbon) Scan(src any) error
- func (c *Carbon) Season() string
- func (c *Carbon) Second() int
- func (c *Carbon) SetDate(year, month, day int) *Carbon
- func (c *Carbon) SetDateMicro(year, month, day, microsecond int) *Carbon
- func (c *Carbon) SetDateMilli(year, month, day, millisecond int) *Carbon
- func (c *Carbon) SetDateNano(year, month, day, nanosecond int) *Carbon
- func (c *Carbon) SetDateTime(year, month, day, hour, minute, second int) *Carbon
- func (c *Carbon) SetDateTimeMicro(year, month, day, hour, minute, second, microsecond int) *Carbon
- func (c *Carbon) SetDateTimeMilli(year, month, day, hour, minute, second, millisecond int) *Carbon
- func (c *Carbon) SetDateTimeNano(year, month, day, hour, minute, second, nanosecond int) *Carbon
- func (c *Carbon) SetDay(day int) *Carbon
- func (c *Carbon) SetFormat(format string) *Carbon
- func (c *Carbon) SetHour(hour int) *Carbon
- func (c *Carbon) SetLanguage(lang *Language) *Carbon
- func (c *Carbon) SetLayout(layout string) *Carbon
- func (c *Carbon) SetLocale(locale string) *Carbon
- func (c *Carbon) SetLocation(loc *Location) *Carbon
- func (c *Carbon) SetMicrosecond(microsecond int) *Carbon
- func (c *Carbon) SetMillisecond(millisecond int) *Carbon
- func (c *Carbon) SetMinute(minute int) *Carbon
- func (c *Carbon) SetMonth(month int) *Carbon
- func (c *Carbon) SetMonthNoOverflow(month int) *Carbon
- func (c *Carbon) SetNanosecond(nanosecond int) *Carbon
- func (c *Carbon) SetSecond(second int) *Carbon
- func (c *Carbon) SetTime(hour, minute, second int) *Carbon
- func (c *Carbon) SetTimeMicro(hour, minute, second, microsecond int) *Carbon
- func (c *Carbon) SetTimeMilli(hour, minute, second, millisecond int) *Carbon
- func (c *Carbon) SetTimeNano(hour, minute, second, nanosecond int) *Carbon
- func (c *Carbon) SetTimezone(name string) *Carbon
- func (c *Carbon) SetWeekStartsAt(weekDay Weekday) *Carbon
- func (c *Carbon) SetWeekendDays(weekDays []Weekday) *Carbon
- func (c *Carbon) SetYear(year int) *Carbon
- func (c *Carbon) SetYearNoOverflow(year int) *Carbon
- func (c *Carbon) StartOfCentury() *Carbon
- func (c *Carbon) StartOfDay() *Carbon
- func (c *Carbon) StartOfDecade() *Carbon
- func (c *Carbon) StartOfHour() *Carbon
- func (c *Carbon) StartOfMinute() *Carbon
- func (c *Carbon) StartOfMonth() *Carbon
- func (c *Carbon) StartOfQuarter() *Carbon
- func (c *Carbon) StartOfSeason() *Carbon
- func (c *Carbon) StartOfSecond() *Carbon
- func (c *Carbon) StartOfWeek() *Carbon
- func (c *Carbon) StartOfYear() *Carbon
- func (c *Carbon) StdTime() StdTime
- func (c *Carbon) String() string
- func (c *Carbon) SubCenturies(centuries int) *Carbon
- func (c *Carbon) SubCenturiesNoOverflow(centuries int) *Carbon
- func (c *Carbon) SubCentury() *Carbon
- func (c *Carbon) SubCenturyNoOverflow() *Carbon
- func (c *Carbon) SubDay() *Carbon
- func (c *Carbon) SubDays(days int) *Carbon
- func (c *Carbon) SubDecade() *Carbon
- func (c *Carbon) SubDecadeNoOverflow() *Carbon
- func (c *Carbon) SubDecades(decades int) *Carbon
- func (c *Carbon) SubDecadesNoOverflow(decades int) *Carbon
- func (c *Carbon) SubDuration(duration string) *Carbon
- func (c *Carbon) SubHour() *Carbon
- func (c *Carbon) SubHours(hours int) *Carbon
- func (c *Carbon) SubMicrosecond() *Carbon
- func (c *Carbon) SubMicroseconds(microseconds int) *Carbon
- func (c *Carbon) SubMillisecond() *Carbon
- func (c *Carbon) SubMilliseconds(milliseconds int) *Carbon
- func (c *Carbon) SubMinute() *Carbon
- func (c *Carbon) SubMinutes(minutes int) *Carbon
- func (c *Carbon) SubMonth() *Carbon
- func (c *Carbon) SubMonthNoOverflow() *Carbon
- func (c *Carbon) SubMonths(months int) *Carbon
- func (c *Carbon) SubMonthsNoOverflow(months int) *Carbon
- func (c *Carbon) SubNanosecond() *Carbon
- func (c *Carbon) SubNanoseconds(nanoseconds int) *Carbon
- func (c *Carbon) SubQuarter() *Carbon
- func (c *Carbon) SubQuarterNoOverflow() *Carbon
- func (c *Carbon) SubQuarters(quarters int) *Carbon
- func (c *Carbon) SubQuartersNoOverflow(quarters int) *Carbon
- func (c *Carbon) SubSecond() *Carbon
- func (c *Carbon) SubSeconds(seconds int) *Carbon
- func (c *Carbon) SubWeek() *Carbon
- func (c *Carbon) SubWeeks(weeks int) *Carbon
- func (c *Carbon) SubYear() *Carbon
- func (c *Carbon) SubYearNoOverflow() *Carbon
- func (c *Carbon) SubYears(years int) *Carbon
- func (c *Carbon) SubYearsNoOverflow(years int) *Carbon
- func (c *Carbon) Time() (hour, minute, second int)
- func (c *Carbon) TimeMicro() (hour, minute, second, microsecond int)
- func (c *Carbon) TimeMilli() (hour, minute, second, millisecond int)
- func (c *Carbon) TimeNano() (hour, minute, second, nanosecond int)
- func (c *Carbon) Timestamp() int64
- func (c *Carbon) TimestampMicro() int64
- func (c *Carbon) TimestampMilli() int64
- func (c *Carbon) TimestampNano() int64
- func (c *Carbon) Timezone() string
- func (c *Carbon) ToAnsicString(timezone ...string) string
- func (c *Carbon) ToAtomString(timezone ...string) string
- func (c *Carbon) ToCookieString(timezone ...string) string
- func (c *Carbon) ToDateMicroString(timezone ...string) string
- func (c *Carbon) ToDateMilliString(timezone ...string) string
- func (c *Carbon) ToDateNanoString(timezone ...string) string
- func (c *Carbon) ToDateString(timezone ...string) string
- func (c *Carbon) ToDateTimeMicroString(timezone ...string) string
- func (c *Carbon) ToDateTimeMilliString(timezone ...string) string
- func (c *Carbon) ToDateTimeNanoString(timezone ...string) string
- func (c *Carbon) ToDateTimeString(timezone ...string) string
- func (c *Carbon) ToDayDateTimeString(timezone ...string) string
- func (c *Carbon) ToFormattedDateString(timezone ...string) string
- func (c *Carbon) ToFormattedDayDateString(timezone ...string) string
- func (c *Carbon) ToHttpString(timezone ...string) string
- func (c *Carbon) ToIso8601MicroString(timezone ...string) string
- func (c *Carbon) ToIso8601MilliString(timezone ...string) string
- func (c *Carbon) ToIso8601NanoString(timezone ...string) string
- func (c *Carbon) ToIso8601String(timezone ...string) string
- func (c *Carbon) ToIso8601ZuluMicroString(timezone ...string) string
- func (c *Carbon) ToIso8601ZuluMilliString(timezone ...string) string
- func (c *Carbon) ToIso8601ZuluNanoString(timezone ...string) string
- func (c *Carbon) ToIso8601ZuluString(timezone ...string) string
- func (c *Carbon) ToKitchenString(timezone ...string) string
- func (c *Carbon) ToMonthString(timezone ...string) string
- func (c *Carbon) ToRfc1036String(timezone ...string) string
- func (c *Carbon) ToRfc1123String(timezone ...string) string
- func (c *Carbon) ToRfc1123zString(timezone ...string) string
- func (c *Carbon) ToRfc2822String(timezone ...string) string
- func (c *Carbon) ToRfc3339MicroString(timezone ...string) string
- func (c *Carbon) ToRfc3339MilliString(timezone ...string) string
- func (c *Carbon) ToRfc3339NanoString(timezone ...string) string
- func (c *Carbon) ToRfc3339String(timezone ...string) string
- func (c *Carbon) ToRfc7231String(timezone ...string) string
- func (c *Carbon) ToRfc822String(timezone ...string) string
- func (c *Carbon) ToRfc822zString(timezone ...string) string
- func (c *Carbon) ToRfc850String(timezone ...string) string
- func (c *Carbon) ToRssString(timezone ...string) string
- func (c *Carbon) ToRubyDateString(timezone ...string) string
- func (c *Carbon) ToShortDateMicroString(timezone ...string) string
- func (c *Carbon) ToShortDateMilliString(timezone ...string) string
- func (c *Carbon) ToShortDateNanoString(timezone ...string) string
- func (c *Carbon) ToShortDateString(timezone ...string) string
- func (c *Carbon) ToShortDateTimeMicroString(timezone ...string) string
- func (c *Carbon) ToShortDateTimeMilliString(timezone ...string) string
- func (c *Carbon) ToShortDateTimeNanoString(timezone ...string) string
- func (c *Carbon) ToShortDateTimeString(timezone ...string) string
- func (c *Carbon) ToShortMonthString(timezone ...string) string
- func (c *Carbon) ToShortTimeMicroString(timezone ...string) string
- func (c *Carbon) ToShortTimeMilliString(timezone ...string) string
- func (c *Carbon) ToShortTimeNanoString(timezone ...string) string
- func (c *Carbon) ToShortTimeString(timezone ...string) string
- func (c *Carbon) ToShortWeekString(timezone ...string) string
- func (c *Carbon) ToString(timezone ...string) string
- func (c *Carbon) ToTimeMicroString(timezone ...string) string
- func (c *Carbon) ToTimeMilliString(timezone ...string) string
- func (c *Carbon) ToTimeNanoString(timezone ...string) string
- func (c *Carbon) ToTimeString(timezone ...string) string
- func (c *Carbon) ToUnixDateString(timezone ...string) string
- func (c *Carbon) ToW3cString(timezone ...string) string
- func (c *Carbon) ToWeekString(timezone ...string) string
- func (c *Carbon) UnmarshalJSON(src []byte) error
- func (c Carbon) Value() (driver.Value, error)
- func (c *Carbon) Week() int
- func (c *Carbon) WeekEndsAt() Weekday
- func (c *Carbon) WeekOfMonth() int
- func (c *Carbon) WeekOfYear() int
- func (c *Carbon) WeekStartsAt() Weekday
- func (c *Carbon) Year() int
- func (c *Carbon) ZoneName() string
- func (c *Carbon) ZoneOffset() int
- type Date
- type DateMicro
- type DateMilli
- type DateNano
- type DateTime
- type DateTimeMicro
- type DateTimeMilli
- type DateTimeNano
- type Default
- type Duration
- type FormatType
- type FormatTyper
- type FrozenNow
- type Language
- type LayoutType
- type LayoutTyper
- type Location
- type StdTime
- type Time
- type TimeMicro
- type TimeMilli
- type TimeNano
- type Timestamp
- type TimestampMicro
- type TimestampMilli
- type TimestampNano
- type TimestampType
- func (t *TimestampType[T]) Int64() (ts int64)
- func (t TimestampType[T]) MarshalJSON() ([]byte, error)
- func (t *TimestampType[T]) Scan(src any) (err error)
- func (t *TimestampType[T]) String() string
- func (t *TimestampType[T]) UnmarshalJSON(src []byte) error
- func (t TimestampType[T]) Value() (driver.Value, error)
- type TimestampTyper
- type Weekday
Examples ¶
- Carbon.AddCenturies
- Carbon.AddCenturiesNoOverflow
- Carbon.AddCentury
- Carbon.AddCenturyNoOverflow
- Carbon.AddDay
- Carbon.AddDays
- Carbon.AddDecade
- Carbon.AddDecadeNoOverflow
- Carbon.AddDecades
- Carbon.AddDecadesNoOverflow
- Carbon.AddDuration
- Carbon.AddHour
- Carbon.AddHours
- Carbon.AddMicrosecond
- Carbon.AddMicroseconds
- Carbon.AddMillisecond
- Carbon.AddMilliseconds
- Carbon.AddMinute
- Carbon.AddMinutes
- Carbon.AddMonth
- Carbon.AddMonthNoOverflow
- Carbon.AddMonths
- Carbon.AddMonthsNoOverflow
- Carbon.AddNanosecond
- Carbon.AddNanoseconds
- Carbon.AddQuarter
- Carbon.AddQuarterNoOverflow
- Carbon.AddQuarters
- Carbon.AddQuartersNoOverflow
- Carbon.AddSecond
- Carbon.AddSeconds
- Carbon.AddWeek
- Carbon.AddWeeks
- Carbon.AddYear
- Carbon.AddYearNoOverflow
- Carbon.AddYears
- Carbon.AddYearsNoOverflow
- Carbon.Age
- Carbon.Between
- Carbon.BetweenIncludedBoth
- Carbon.BetweenIncludedEnd
- Carbon.BetweenIncludedStart
- Carbon.Century
- Carbon.Closest
- Carbon.Compare
- Carbon.Constellation
- Carbon.Copy
- Carbon.CurrentLayout
- Carbon.Date
- Carbon.DateMicro
- Carbon.DateMilli
- Carbon.DateNano
- Carbon.DateTime
- Carbon.DateTimeMicro
- Carbon.DateTimeMilli
- Carbon.DateTimeNano
- Carbon.Day
- Carbon.DayOfMonth
- Carbon.DayOfWeek
- Carbon.DayOfYear
- Carbon.DaysInMonth
- Carbon.DaysInYear
- Carbon.Decade
- Carbon.DiffAbsInDays
- Carbon.DiffAbsInDuration
- Carbon.DiffAbsInHours
- Carbon.DiffAbsInMinutes
- Carbon.DiffAbsInMonths
- Carbon.DiffAbsInSeconds
- Carbon.DiffAbsInString
- Carbon.DiffAbsInWeeks
- Carbon.DiffAbsInYears
- Carbon.DiffForHumans
- Carbon.DiffInDays
- Carbon.DiffInDuration
- Carbon.DiffInHours
- Carbon.DiffInMinutes
- Carbon.DiffInMonths
- Carbon.DiffInSeconds
- Carbon.DiffInString
- Carbon.DiffInWeeks
- Carbon.DiffInYears
- Carbon.EndOfCentury
- Carbon.EndOfDay
- Carbon.EndOfDecade
- Carbon.EndOfHour
- Carbon.EndOfMinute
- Carbon.EndOfMonth
- Carbon.EndOfQuarter
- Carbon.EndOfSeason
- Carbon.EndOfSecond
- Carbon.EndOfWeek
- Carbon.EndOfYear
- Carbon.Eq
- Carbon.Farthest
- Carbon.Format
- Carbon.GoString
- Carbon.Gt
- Carbon.Gte
- Carbon.HasError
- Carbon.Hebrew
- Carbon.Hour
- Carbon.IsAM
- Carbon.IsApril
- Carbon.IsAquarius
- Carbon.IsAries
- Carbon.IsAugust
- Carbon.IsAutumn
- Carbon.IsCancer
- Carbon.IsCapricorn
- Carbon.IsDST
- Carbon.IsDecember
- Carbon.IsEmpty
- Carbon.IsEpoch
- Carbon.IsFebruary
- Carbon.IsFriday
- Carbon.IsFuture
- Carbon.IsGemini
- Carbon.IsInvalid
- Carbon.IsJanuary
- Carbon.IsJuly
- Carbon.IsJune
- Carbon.IsLeapYear
- Carbon.IsLeo
- Carbon.IsLibra
- Carbon.IsLongYear
- Carbon.IsMarch
- Carbon.IsMay
- Carbon.IsMonday
- Carbon.IsNil
- Carbon.IsNovember
- Carbon.IsNow
- Carbon.IsOctober
- Carbon.IsPM
- Carbon.IsPast
- Carbon.IsPisces
- Carbon.IsSagittarius
- Carbon.IsSameCentury
- Carbon.IsSameDay
- Carbon.IsSameDecade
- Carbon.IsSameHour
- Carbon.IsSameMinute
- Carbon.IsSameMonth
- Carbon.IsSameQuarter
- Carbon.IsSameSecond
- Carbon.IsSameYear
- Carbon.IsSaturday
- Carbon.IsScorpio
- Carbon.IsSeptember
- Carbon.IsSpring
- Carbon.IsSummer
- Carbon.IsSunday
- Carbon.IsThursday
- Carbon.IsToday
- Carbon.IsTomorrow
- Carbon.IsTuesday
- Carbon.IsValid
- Carbon.IsVirgo
- Carbon.IsWednesday
- Carbon.IsWeekday
- Carbon.IsWeekend
- Carbon.IsWinter
- Carbon.IsYesterday
- Carbon.IsZero
- Carbon.Julian
- Carbon.Layout
- Carbon.Locale
- Carbon.Lt
- Carbon.Lte
- Carbon.Lunar
- Carbon.MarshalJSON
- Carbon.Microsecond
- Carbon.Millisecond
- Carbon.Minute
- Carbon.Month
- Carbon.MonthOfYear
- Carbon.Nanosecond
- Carbon.Ne
- Carbon.Persian
- Carbon.Quarter
- Carbon.Season
- Carbon.Second
- Carbon.SetDate
- Carbon.SetDateMicro
- Carbon.SetDateMilli
- Carbon.SetDateNano
- Carbon.SetDateTime
- Carbon.SetDateTimeMicro
- Carbon.SetDateTimeMilli
- Carbon.SetDateTimeNano
- Carbon.SetDay
- Carbon.SetFormat
- Carbon.SetHour
- Carbon.SetLanguage
- Carbon.SetLayout
- Carbon.SetLocale
- Carbon.SetLocation
- Carbon.SetMicrosecond
- Carbon.SetMillisecond
- Carbon.SetMinute
- Carbon.SetMonth
- Carbon.SetMonthNoOverflow
- Carbon.SetNanosecond
- Carbon.SetSecond
- Carbon.SetTime
- Carbon.SetTimeMicro
- Carbon.SetTimeMilli
- Carbon.SetTimeNano
- Carbon.SetTimezone
- Carbon.SetWeekStartsAt
- Carbon.SetWeekendDays
- Carbon.SetYear
- Carbon.SetYearNoOverflow
- Carbon.StartOfCentury
- Carbon.StartOfDay
- Carbon.StartOfDecade
- Carbon.StartOfHour
- Carbon.StartOfMinute
- Carbon.StartOfMonth
- Carbon.StartOfQuarter
- Carbon.StartOfSeason
- Carbon.StartOfSecond
- Carbon.StartOfWeek
- Carbon.StartOfYear
- Carbon.StdTime
- Carbon.String
- Carbon.SubCenturies
- Carbon.SubCenturiesNoOverflow
- Carbon.SubCentury
- Carbon.SubCenturyNoOverflow
- Carbon.SubDay
- Carbon.SubDays
- Carbon.SubDecade
- Carbon.SubDecadeNoOverflow
- Carbon.SubDecades
- Carbon.SubDecadesNoOverflow
- Carbon.SubDuration
- Carbon.SubHour
- Carbon.SubHours
- Carbon.SubMicrosecond
- Carbon.SubMicroseconds
- Carbon.SubMillisecond
- Carbon.SubMilliseconds
- Carbon.SubMinute
- Carbon.SubMinutes
- Carbon.SubMonth
- Carbon.SubMonthNoOverflow
- Carbon.SubMonths
- Carbon.SubMonthsNoOverflow
- Carbon.SubNanosecond
- Carbon.SubNanoseconds
- Carbon.SubQuarter
- Carbon.SubQuarterNoOverflow
- Carbon.SubQuarters
- Carbon.SubQuartersNoOverflow
- Carbon.SubSecond
- Carbon.SubSeconds
- Carbon.SubWeek
- Carbon.SubWeeks
- Carbon.SubYear
- Carbon.SubYearNoOverflow
- Carbon.SubYears
- Carbon.SubYearsNoOverflow
- Carbon.Time
- Carbon.TimeMicro
- Carbon.TimeMilli
- Carbon.TimeNano
- Carbon.Timestamp
- Carbon.TimestampMicro
- Carbon.TimestampMilli
- Carbon.TimestampNano
- Carbon.Timezone
- Carbon.ToAnsicString
- Carbon.ToAtomString
- Carbon.ToCookieString
- Carbon.ToDateMicroString
- Carbon.ToDateMilliString
- Carbon.ToDateNanoString
- Carbon.ToDateString
- Carbon.ToDateTimeMicroString
- Carbon.ToDateTimeMilliString
- Carbon.ToDateTimeNanoString
- Carbon.ToDateTimeString
- Carbon.ToDayDateTimeString
- Carbon.ToFormattedDateString
- Carbon.ToFormattedDayDateString
- Carbon.ToHttpString
- Carbon.ToIso8601MicroString
- Carbon.ToIso8601MilliString
- Carbon.ToIso8601NanoString
- Carbon.ToIso8601String
- Carbon.ToIso8601ZuluMicroString
- Carbon.ToIso8601ZuluMilliString
- Carbon.ToIso8601ZuluNanoString
- Carbon.ToIso8601ZuluString
- Carbon.ToKitchenString
- Carbon.ToMonthString
- Carbon.ToRfc1036String
- Carbon.ToRfc1123String
- Carbon.ToRfc1123zString
- Carbon.ToRfc2822String
- Carbon.ToRfc3339MicroString
- Carbon.ToRfc3339MilliString
- Carbon.ToRfc3339NanoString
- Carbon.ToRfc3339String
- Carbon.ToRfc7231String
- Carbon.ToRfc822String
- Carbon.ToRfc822zString
- Carbon.ToRfc850String
- Carbon.ToRssString
- Carbon.ToRubyDateString
- Carbon.ToShortDateMicroString
- Carbon.ToShortDateMilliString
- Carbon.ToShortDateNanoString
- Carbon.ToShortDateString
- Carbon.ToShortDateTimeMicroString
- Carbon.ToShortDateTimeMilliString
- Carbon.ToShortDateTimeNanoString
- Carbon.ToShortDateTimeString
- Carbon.ToShortMonthString
- Carbon.ToShortTimeMicroString
- Carbon.ToShortTimeMilliString
- Carbon.ToShortTimeNanoString
- Carbon.ToShortTimeString
- Carbon.ToShortWeekString
- Carbon.ToString
- Carbon.ToTimeMicroString
- Carbon.ToTimeMilliString
- Carbon.ToTimeNanoString
- Carbon.ToTimeString
- Carbon.ToUnixDateString
- Carbon.ToW3cString
- Carbon.ToWeekString
- Carbon.UnmarshalJSON
- Carbon.Week
- Carbon.WeekEndsAt
- Carbon.WeekOfMonth
- Carbon.WeekOfYear
- Carbon.WeekStartsAt
- Carbon.Year
- Carbon.ZoneName
- Carbon.ZoneOffset
- ClearTestNow
- CreateFromDate
- CreateFromDateMicro
- CreateFromDateMilli
- CreateFromDateNano
- CreateFromDateTime
- CreateFromDateTimeMicro
- CreateFromDateTimeMilli
- CreateFromDateTimeNano
- CreateFromHebrew
- CreateFromJulian
- CreateFromLunar
- CreateFromPersian
- CreateFromStdTime
- CreateFromTime
- CreateFromTimeMicro
- CreateFromTimeMilli
- CreateFromTimeNano
- CreateFromTimestamp
- CreateFromTimestampMicro
- CreateFromTimestampMilli
- CreateFromTimestampNano
- EpochValue
- FormatType.MarshalJSON
- FormatType.String
- FormatType.UnmarshalJSON
- Language.SetLocale
- Language.SetResources
- LayoutType.MarshalJSON
- LayoutType.String
- LayoutType.UnmarshalJSON
- Max
- MaxDuration
- MaxValue
- Min
- MinDuration
- MinValue
- NewCarbon
- Now
- Parse
- ParseByFormat
- ParseByFormats
- ParseByLayout
- ParseByLayouts
- SetDefault
- SetFormat
- SetLayout
- SetLocale
- SetLocation
- SetTestNow
- SetTimezone
- SetWeekStartsAt
- SetWeekendDays
- Sleep
- Tomorrow
- Yesterday
- ZeroValue
Constants ¶
const ( Local = "Local" UTC = "UTC" CET = "CET" EET = "EET" EST = "EST" GMT = "GMT" MET = "MET" MST = "MST" UCT = "MST" WET = "WET" Zulu = "Zulu" 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" Urumqi = "Asia/Urumqi" HongKong = "Asia/Hong_Kong" Macao = "Asia/Macao" Taipei = "Asia/Taipei" Tokyo = "Asia/Tokyo" HoChiMinh = "Asia/Ho_Chi_Minh" Hanoi = "Asia/Hanoi" Saigon = "Asia/Saigon" Seoul = "Asia/Seoul" Pyongyang = "Asia/Pyongyang" Bangkok = "Asia/Bangkok" Dubai = "Asia/Dubai" Qatar = "Asia/Qatar" Bangalore = "Asia/Bangalore" Kolkata = "Asia/Kolkata" Mumbai = "Asia/Mumbai" MexicoCity = "America/Mexico_City" NewYork = "America/New_York" LosAngeles = "America/Los_Angeles" Chicago = "America/Chicago" SaoPaulo = "America/Sao_Paulo" Moscow = "Europe/Moscow" London = "Europe/London" Berlin = "Europe/Berlin" Paris = "Europe/Paris" Rome = "Europe/Rome" Sydney = "Australia/Sydney" Melbourne = "Australia/Melbourne" Darwin = "Australia/Darwin" )
timezone constants
const ( January = time.January February = time.February March = time.March April = time.April May = time.May June = time.June July = time.July August = time.August September = time.September October = time.October November = time.November December = time.December )
month constants
const ( Spring = "Spring" Summer = "Summer" Autumn = "Autumn" Winter = "Winter" )
season constants
const ( Aries = "Aries" Taurus = "Taurus" Gemini = "Gemini" Cancer = "Cancer" Leo = "Leo" Virgo = "Virgo" Libra = "Libra" Scorpio = "Scorpio" Sagittarius = "Sagittarius" Capricorn = "Capricorn" Aquarius = "Aquarius" Pisces = "Pisces" )
constellation constants
const ( Monday = time.Monday Tuesday = time.Tuesday Wednesday = time.Wednesday Thursday = time.Thursday Friday = time.Friday Saturday = time.Saturday Sunday = time.Sunday )
week constants
const ( EpochYear = 1970 YearsPerMillennium = 1000 YearsPerCentury = 100 YearsPerDecade = 10 QuartersPerYear = 4 MonthsPerYear = 12 MonthsPerQuarter = 3 WeeksPerNormalYear = 52 WeeksPerLongYear = 53 WeeksPerMonth = 4 DaysPerLeapYear = 366 DaysPerNormalYear = 365 DaysPerWeek = 7 HoursPerWeek = 168 HoursPerDay = 24 MinutesPerDay = 1440 MinutesPerHour = 60 SecondsPerWeek = 604800 SecondsPerDay = 86400 SecondsPerHour = 3600 SecondsPerMinute = 60 )
number constants
const ( MaxYear = 9999 MaxMonth = 12 MaxDay = 31 MaxHour = 23 MaxMinute = 59 MaxSecond = 59 MaxNanosecond = 999999999 )
max constants
const ( MinYear = 1 MinMonth = 1 MinDay = 1 MinHour = 0 MinMinute = 0 MinSecond = 0 MinNanosecond = 0 )
min constants
const ( AtomLayout = RFC3339Layout ANSICLayout = time.ANSIC CookieLayout = "Monday, 02-Jan-2006 15:04:05 MST" KitchenLayout = time.Kitchen RssLayout = time.RFC1123Z RubyDateLayout = time.RubyDate UnixDateLayout = time.UnixDate W3cLayout = RFC3339Layout HttpLayout = "Mon, 02 Jan 2006 15:04:05 GMT" RFC1036Layout = "Mon, 02 Jan 06 15:04:05 -0700" RFC1123Layout = time.RFC1123 RFC1123ZLayout = time.RFC1123Z RFC2822Layout = time.RFC1123Z RFC3339Layout = "2006-01-02T15:04:05Z07:00" RFC3339MilliLayout = "2006-01-02T15:04:05.999Z07:00" RFC3339MicroLayout = "2006-01-02T15:04:05.999999Z07:00" RFC3339NanoLayout = "2006-01-02T15:04:05.999999999Z07:00" RFC7231Layout = "Mon, 02 Jan 2006 15:04:05 MST" RFC822Layout = time.RFC822 RFC822ZLayout = time.RFC822Z RFC850Layout = time.RFC850 ISO8601Layout = "2006-01-02T15:04:05-07:00" ISO8601MilliLayout = "2006-01-02T15:04:05.999-07:00" ISO8601MicroLayout = "2006-01-02T15:04:05.999999-07:00" ISO8601NanoLayout = "2006-01-02T15:04:05.999999999-07:00" ISO8601ZuluLayout = "2006-01-02T15:04:05Z" ISO8601ZuluMilliLayout = "2006-01-02T15:04:05.999Z" ISO8601ZuluMicroLayout = "2006-01-02T15:04:05.999999Z" ISO8601ZuluNanoLayout = "2006-01-02T15:04:05.999999999Z" FormattedDateLayout = "Jan 2, 2006" FormattedDayDateLayout = "Mon, Jan 2, 2006" DayDateTimeLayout = "Mon, Jan 2, 2006 3:04 PM" DateTimeLayout = "2006-01-02 15:04:05" DateTimeMilliLayout = "2006-01-02 15:04:05.999" DateTimeMicroLayout = "2006-01-02 15:04:05.999999" DateTimeNanoLayout = "2006-01-02 15:04:05.999999999" ShortDateTimeLayout = "20060102150405" ShortDateTimeMilliLayout = "20060102150405.999" ShortDateTimeMicroLayout = "20060102150405.999999" ShortDateTimeNanoLayout = "20060102150405.999999999" DateLayout = "2006-01-02" DateMilliLayout = "2006-01-02.999" DateMicroLayout = "2006-01-02.999999" DateNanoLayout = "2006-01-02.999999999" ShortDateLayout = "20060102" ShortDateMilliLayout = "20060102.999" ShortDateMicroLayout = "20060102.999999" ShortDateNanoLayout = "20060102.999999999" TimeLayout = "15:04:05" TimeMilliLayout = "15:04:05.999" TimeMicroLayout = "15:04:05.999999" TimeNanoLayout = "15:04:05.999999999" ShortTimeLayout = "150405" ShortTimeMilliLayout = "150405.999" ShortTimeMicroLayout = "150405.999999" ShortTimeNanoLayout = "150405.999999999" TimestampLayout = "unix" TimestampMilliLayout = "unixMilli" TimestampMicroLayout = "unixMicro" TimestampNanoLayout = "unixNano" )
layout constants
const ( AtomFormat = "Y-m-d\\TH:i:sR" ANSICFormat = "D M j H:i:s Y" CookieFormat = "l, d-M-Y H:i:s Z" KitchenFormat = "g:iA" RssFormat = "D, d M Y H:i:s O" RubyDateFormat = "D M d H:i:s O Y" UnixDateFormat = "D M j H:i:s Z Y" W3cFormat = RFC3339Format HttpFormat = "D, d M Y H:i:s \\G\\M\\T" RFC1036Format = "D, d M y H:i:s O" RFC1123Format = "D, d M Y H:i:s Z" RFC1123ZFormat = "D, d M Y H:i:s O" RFC2822Format = "D, d M Y H:i:s O" RFC3339Format = "Y-m-d\\TH:i:sR" RFC3339MilliFormat = "Y-m-d\\TH:i:s.uR" RFC3339MicroFormat = "Y-m-d\\TH:i:s.vR" RFC3339NanoFormat = "Y-m-d\\TH:i:s.xR" RFC7231Format = "D, d M Y H:i:s Z" RFC822Format = "d M y H:i Z" RFC822ZFormat = "d M y H:i O" RFC850Format = "l, d-M-y H:i:s Z" ISO8601Format = "Y-m-d\\TH:i:sP" ISO8601MilliFormat = "Y-m-d\\TH:i:s.uP" ISO8601MicroFormat = "Y-m-d\\TH:i:s.vP" ISO8601NanoFormat = "Y-m-d\\TH:i:s.xP" ISO8601ZuluFormat = "Y-m-d\\TH:i:s\\Z" ISO8601ZuluMilliFormat = "Y-m-d\\TH:i:s.u\\Z" ISO8601ZuluMicroFormat = "Y-m-d\\TH:i:s.v\\Z" ISO8601ZuluNanoFormat = "Y-m-d\\TH:i:s.x\\Z" FormattedDateFormat = "M j, Y" FormattedDayDateFormat = "D, M j, Y" DayDateTimeFormat = "D, M j, Y g:i A" DateTimeFormat = "Y-m-d H:i:s" DateTimeMilliFormat = "Y-m-d H:i:s.u" DateTimeMicroFormat = "Y-m-d H:i:s.v" DateTimeNanoFormat = "Y-m-d H:i:s.x" ShortDateTimeFormat = "YmdHis" ShortDateTimeMilliFormat = "YmdHis.u" ShortDateTimeMicroFormat = "YmdHis.v" ShortDateTimeNanoFormat = "YmdHis.x" DateFormat = "Y-m-d" DateMilliFormat = "Y-m-d.u" DateMicroFormat = "Y-m-d.v" DateNanoFormat = "Y-m-d.x" ShortDateFormat = "Ymd" ShortDateMilliFormat = "Ymd.u" ShortDateMicroFormat = "Ymd.v" ShortDateNanoFormat = "Ymd.x" TimeFormat = "H:i:s" TimeMilliFormat = "H:i:s.u" TimeMicroFormat = "H:i:s.v" TimeNanoFormat = "H:i:s.x" ShortTimeFormat = "His" ShortTimeMilliFormat = "His.u" ShortTimeMicroFormat = "His.v" ShortTimeNanoFormat = "His.x" TimestampFormat = "S" TimestampMilliFormat = "U" TimestampMicroFormat = "V" TimestampNanoFormat = "X" )
format constants
const ( PrecisionSecond = "second" PrecisionMillisecond = "millisecond" PrecisionMicrosecond = "microsecond" PrecisionNanosecond = "nanosecond" )
timestamp precision constants
const Version = "2.6.15"
Version current version
Variables ¶
var ( // DefaultLayout default layout DefaultLayout = DateTimeLayout // DefaultTimezone default timezone DefaultTimezone = UTC // DefaultLocale default language locale DefaultLocale = "en" // DefaultWeekStartsAt default start date of the week DefaultWeekStartsAt = Monday // DefaultWeekendDays default weekend days of the week DefaultWeekendDays = []Weekday{ Saturday, Sunday, } )
var ( // ErrFailedParse failed to parse error. ErrFailedParse = func(value any) error { return fmt.Errorf("failed to parse %v as carbon", value) } // ErrFailedScan failed to scan error. ErrFailedScan = func(value any) error { return fmt.Errorf("failed to scan %v as carbon", value) } // ErrInvalidTimestamp invalid timestamp error. ErrInvalidTimestamp = func(value string) error { return fmt.Errorf("invalid timestamp %v", value) } // ErrNilLocation nil location error. ErrNilLocation = func() error { return fmt.Errorf("location cannot be nil") } // ErrNilLanguage nil language error. ErrNilLanguage = func() error { return fmt.Errorf("language cannot be nil") } // ErrInvalidLanguage invalid language error. ErrInvalidLanguage = func(lang *Language) error { return fmt.Errorf("invalid Language %v", lang) } // ErrEmptyLocale empty locale error. ErrEmptyLocale = func() error { return fmt.Errorf("locale cannot be empty") } // ErrNotExistLocale not exist locale error. ErrNotExistLocale = func(locale string) error { return fmt.Errorf("locale %q doesn't exist", locale) } // ErrEmptyResources empty resources error. ErrEmptyResources = func() error { return fmt.Errorf("resources cannot be empty") } // ErrEmptyTimezone empty timezone error. ErrEmptyTimezone = func() error { return fmt.Errorf("timezone cannot be empty") } // ErrInvalidTimezone invalid timezone error. ErrInvalidTimezone = func(timezone string) error { return fmt.Errorf("invalid timezone %q, please see the file %q for all valid timezones", timezone, "$GOROOT/lib/time/zoneinfo.zip") } // ErrEmptyDuration empty duration error. ErrEmptyDuration = func() error { return fmt.Errorf("duration cannot be empty") } // ErrInvalidDuration invalid duration error. ErrInvalidDuration = func(duration string) error { return fmt.Errorf("invalid duration %q", duration) } // ErrEmptyLayout empty layout error. ErrEmptyLayout = func() error { return fmt.Errorf("layout cannot be empty") } // ErrMismatchedLayout mismatched layout error. ErrMismatchedLayout = func(value, layout string) error { return fmt.Errorf("value %q and layout %q are mismatched", value, layout) } // ErrEmptyFormat empty format error. ErrEmptyFormat = func() error { return fmt.Errorf("format cannot be empty") } // ErrMismatchedFormat mismatched format error. ErrMismatchedFormat = func(value, format string) error { return fmt.Errorf("value %q and format %q are mismatched", value, format) } )
Functions ¶
func ClearTestNow ¶ added in v2.6.5
func ClearTestNow()
ClearTestNow clears the test Carbon instance for now.
Example ¶
carbon.SetTestNow(carbon.Parse("2020-08-05"))
fmt.Println(carbon.IsTestNow())
carbon.ClearTestNow()
fmt.Println(carbon.IsTestNow())
Output: true false
func SetDefault ¶
func SetDefault(d Default)
SetDefault sets default.
Example ¶
defer carbon.ResetDefault()
carbon.SetDefault(carbon.Default{
Layout: carbon.DateTimeLayout,
Timezone: carbon.PRC,
Locale: "zh-CN",
WeekStartsAt: carbon.Monday,
WeekendDays: []carbon.Weekday{
carbon.Saturday, carbon.Sunday,
},
})
fmt.Println("default layout:", carbon.DefaultLayout)
fmt.Println("default timezone:", carbon.DefaultTimezone)
fmt.Println("default week starts at:", carbon.DefaultWeekStartsAt)
fmt.Println("default weekend days:", carbon.DefaultWeekendDays)
fmt.Println("default locale:", carbon.DefaultLocale)
Output: default layout: 2006-01-02 15:04:05 default timezone: PRC default week starts at: Monday default weekend days: [Saturday Sunday] default locale: zh-CN
func SetTestNow ¶ added in v2.6.0
func SetTestNow(c *Carbon)
SetTestNow sets a test Carbon instance for now.
Example ¶
defer carbon.ClearTestNow()
now := carbon.Parse("2020-08-05")
carbon.SetTestNow(now)
fmt.Println(carbon.Now().ToDateString())
fmt.Println(carbon.Yesterday().ToDateString())
fmt.Println(carbon.Tomorrow().ToDateString())
fmt.Println(carbon.Now().DiffForHumans())
fmt.Println(carbon.Yesterday().DiffForHumans())
fmt.Println(carbon.Tomorrow().DiffForHumans())
fmt.Println(carbon.Parse("2020-10-05").DiffForHumans())
fmt.Println(now.DiffForHumans(carbon.Parse("2020-10-05")))
Output: 2020-08-05 2020-08-04 2020-08-06 just now 1 day ago 1 day from now 2 months from now 2 months before
func Sleep ¶ added in v2.6.11
Sleep sleeps for the specified duration like time.Sleep.
Example ¶
fmt.Println("Normal mode sleep:")
c := carbon.NewCarbon()
fmt.Printf("Before sleep: %s\n", c.ToString())
carbon.Sleep(1 * time.Second)
fmt.Printf("After sleep: %s\n", c.ToString())
fmt.Println("\nTest mode sleep:")
testNow := carbon.Parse("2020-08-05 13:14:15")
carbon.SetTestNow(testNow)
defer carbon.ClearTestNow()
fmt.Printf("Test time before sleep: %s\n", carbon.Now().ToString())
carbon.Sleep(2 * time.Hour)
fmt.Printf("Test time after sleep: %s\n", carbon.Now().ToString())
carbon.Sleep(30 * time.Minute)
fmt.Printf("Test time after another sleep: %s\n", carbon.Now().ToString())
Output: Normal mode sleep: Before sleep: 0001-01-01 00:00:00 +0000 UTC After sleep: 0001-01-01 00:00:00 +0000 UTC Test mode sleep: Test time before sleep: 2020-08-05 13:14:15 +0000 UTC Test time after sleep: 2020-08-05 15:14:15 +0000 UTC Test time after another sleep: 2020-08-05 15:44:15 +0000 UTC
Types ¶
type Carbon ¶
type Carbon struct {
Error error
// contains filtered or unexported fields
}
Carbon defines a Carbon struct.
func CreateFromDate ¶
CreateFromDate creates a Carbon instance from a given date.
Example ¶
fmt.Println(carbon.CreateFromDate(2020, 8, 5).ToString()) fmt.Println(carbon.CreateFromDate(2020, 8, 5, carbon.PRC).ToString())
Output: 2020-08-05 00:00:00 +0000 UTC 2020-08-05 00:00:00 +0800 CST
func CreateFromDateMicro ¶
CreateFromDateMicro creates a Carbon instance from a given date and microsecond.
Example ¶
fmt.Println(carbon.CreateFromDateMicro(2020, 8, 5, 999999).ToString()) fmt.Println(carbon.CreateFromDateMicro(2020, 8, 5, 999999, carbon.PRC).ToString())
Output: 2020-08-05 00:00:00.999999 +0000 UTC 2020-08-05 00:00:00.999999 +0800 CST
func CreateFromDateMilli ¶
CreateFromDateMilli creates a Carbon instance from a given date and millisecond.
Example ¶
fmt.Println(carbon.CreateFromDateMilli(2020, 8, 5, 999).ToString()) fmt.Println(carbon.CreateFromDateMilli(2020, 8, 5, 999, carbon.PRC).ToString())
Output: 2020-08-05 00:00:00.999 +0000 UTC 2020-08-05 00:00:00.999 +0800 CST
func CreateFromDateNano ¶
CreateFromDateNano creates a Carbon instance from a given date and nanosecond.
Example ¶
fmt.Println(carbon.CreateFromDateNano(2020, 8, 5, 999999999).ToString()) fmt.Println(carbon.CreateFromDateNano(2020, 8, 5, 999999999, carbon.PRC).ToString())
Output: 2020-08-05 00:00:00.999999999 +0000 UTC 2020-08-05 00:00:00.999999999 +0800 CST
func CreateFromDateTime ¶
CreateFromDateTime creates a Carbon instance from a given date and time.
Example ¶
fmt.Println(carbon.CreateFromDateTime(2020, 8, 5, 13, 14, 15).ToString()) fmt.Println(carbon.CreateFromDateTime(2020, 8, 5, 13, 14, 15, carbon.PRC).ToString())
Output: 2020-08-05 13:14:15 +0000 UTC 2020-08-05 13:14:15 +0800 CST
func CreateFromDateTimeMicro ¶
func CreateFromDateTimeMicro(year, month, day, hour, minute, second, microsecond int, timezone ...string) *Carbon
CreateFromDateTimeMicro creates a Carbon instance from a given date, time and microsecond.
Example ¶
fmt.Println(carbon.CreateFromDateTimeMicro(2020, 8, 5, 13, 14, 15, 999999).ToString()) fmt.Println(carbon.CreateFromDateTimeMicro(2020, 8, 5, 13, 14, 15, 999999, carbon.PRC).ToString())
Output: 2020-08-05 13:14:15.999999 +0000 UTC 2020-08-05 13:14:15.999999 +0800 CST
func CreateFromDateTimeMilli ¶
func CreateFromDateTimeMilli(year, month, day, hour, minute, second, millisecond int, timezone ...string) *Carbon
CreateFromDateTimeMilli creates a Carbon instance from a given date, time and millisecond.
Example ¶
fmt.Println(carbon.CreateFromDateTimeMilli(2020, 8, 5, 13, 14, 15, 999).ToString()) fmt.Println(carbon.CreateFromDateTimeMilli(2020, 8, 5, 13, 14, 15, 999, carbon.PRC).ToString())
Output: 2020-08-05 13:14:15.999 +0000 UTC 2020-08-05 13:14:15.999 +0800 CST
func CreateFromDateTimeNano ¶
func CreateFromDateTimeNano(year, month, day, hour, minute, second, nanosecond int, timezone ...string) *Carbon
CreateFromDateTimeNano creates a Carbon instance from a given date, time and nanosecond.
Example ¶
fmt.Println(carbon.CreateFromDateTimeNano(2020, 8, 5, 13, 14, 15, 999999999).ToString()) fmt.Println(carbon.CreateFromDateTimeNano(2020, 8, 5, 13, 14, 15, 999999999, carbon.PRC).ToString())
Output: 2020-08-05 13:14:15.999999999 +0000 UTC 2020-08-05 13:14:15.999999999 +0800 CST
func CreateFromHebrew ¶ added in v2.6.11
CreateFromHebrew creates a Carbon instance from Hebrew date.
Example ¶
fmt.Println(carbon.CreateFromHebrew(5784, 10, 20).ToDateString()) fmt.Println(carbon.CreateFromHebrew(5784, 5, 1).ToDateString()) fmt.Println(carbon.CreateFromHebrew(5786, 7, 10).ToDateString())
Output: 2023-12-17 2024-07-21 2025-09-18
func CreateFromJulian ¶
CreateFromJulian creates a Carbon instance from Julian Day or Modified Julian Day.
Example ¶
fmt.Println(carbon.CreateFromJulian(2.460333051563e+06).ToString()) fmt.Println(carbon.CreateFromJulian(60332.551563).ToString())
Output: 2024-01-23 13:14:15 +0000 UTC 2024-01-23 13:14:15 +0000 UTC
func CreateFromLunar ¶
CreateFromLunar creates a Carbon instance from Lunar date.
Example ¶
fmt.Println(carbon.CreateFromLunar(2023, 2, 11, false).ToString(carbon.PRC)) fmt.Println(carbon.CreateFromLunar(2023, 2, 11, true).ToString(carbon.PRC))
Output: 2023-03-02 00:00:00 +0800 CST 2023-04-01 00:00:00 +0800 CST
func CreateFromPersian ¶
CreateFromPersian creates a Carbon instance from Persian date.
Example ¶
fmt.Println(carbon.CreateFromPersian(1178, 10, 11).ToDateString()) fmt.Println(carbon.CreateFromPersian(1402, 10, 11).ToDateString()) fmt.Println(carbon.CreateFromPersian(1403, 5, 15).ToDateString())
Output: 1800-01-01 2024-01-01 2024-08-05
func CreateFromStdTime ¶
CreateFromStdTime creates a Carbon instance from standard time.Time.
Example ¶
t1, _ := time.Parse(carbon.DateTimeLayout, "2020-08-05 13:14:15") fmt.Println(carbon.CreateFromStdTime(t1).ToString()) loc, _ := time.LoadLocation(carbon.PRC) t2, _ := time.ParseInLocation(carbon.DateTimeLayout, "2020-08-05 13:14:15", loc) fmt.Println(carbon.CreateFromStdTime(t2).ToString())
Output: 2020-08-05 13:14:15 +0000 UTC 2020-08-05 13:14:15 +0800 CST
func CreateFromTime ¶
CreateFromTime creates a Carbon instance from a given time(year, month and day are taken from the current time).
Example ¶
fmt.Println(carbon.CreateFromTime(13, 14, 15).ToTimeString()) fmt.Println(carbon.CreateFromTime(13, 14, 15, carbon.PRC).ToTimeString())
Output: 13:14:15 13:14:15
func CreateFromTimeMicro ¶
CreateFromTimeMicro creates a Carbon instance from a given time and microsecond(year, month and day are taken from the current time).
Example ¶
fmt.Println(carbon.CreateFromTimeMicro(13, 14, 15, 999999).ToTimeMicroString()) fmt.Println(carbon.CreateFromTimeMicro(13, 14, 15, 999999, carbon.PRC).ToTimeMicroString())
Output: 13:14:15.999999 13:14:15.999999
func CreateFromTimeMilli ¶
CreateFromTimeMilli creates a Carbon instance from a given time and millisecond(year, month and day are taken from the current time).
Example ¶
fmt.Println(carbon.CreateFromTimeMilli(13, 14, 15, 999).ToTimeMilliString()) fmt.Println(carbon.CreateFromTimeMilli(13, 14, 15, 999, carbon.PRC).ToTimeMilliString())
Output: 13:14:15.999 13:14:15.999
func CreateFromTimeNano ¶
CreateFromTimeNano creates a Carbon instance from a given time and nanosecond(year, month and day are taken from the current time).
Example ¶
fmt.Println(carbon.CreateFromTimeNano(13, 14, 15, 999999999).ToTimeNanoString()) fmt.Println(carbon.CreateFromTimeNano(13, 14, 15, 999999999, carbon.PRC).ToTimeNanoString())
Output: 13:14:15.999999999 13:14:15.999999999
func CreateFromTimestamp ¶
CreateFromTimestamp creates a Carbon instance from a given timestamp with second precision.
Example ¶
fmt.Println(carbon.CreateFromTimestamp(-1).ToString()) fmt.Println(carbon.CreateFromTimestamp(0).ToString()) fmt.Println(carbon.CreateFromTimestamp(1, carbon.PRC).ToString()) fmt.Println(carbon.CreateFromTimestamp(1649735755, carbon.PRC).ToString())
Output: 1969-12-31 23:59:59 +0000 UTC 1970-01-01 00:00:00 +0000 UTC 1970-01-01 08:00:01 +0800 CST 2022-04-12 11:55:55 +0800 CST
func CreateFromTimestampMicro ¶
CreateFromTimestampMicro creates a Carbon instance from a given timestamp with microsecond precision.
Example ¶
fmt.Println(carbon.CreateFromTimestampMicro(-1).ToString()) fmt.Println(carbon.CreateFromTimestampMicro(0).ToString()) fmt.Println(carbon.CreateFromTimestampMicro(1, carbon.PRC).ToString()) fmt.Println(carbon.CreateFromTimestampMicro(1649735755981566, carbon.PRC).ToString())
Output: 1969-12-31 23:59:59.999999 +0000 UTC 1970-01-01 00:00:00 +0000 UTC 1970-01-01 08:00:00.000001 +0800 CST 2022-04-12 11:55:55.981566 +0800 CST
func CreateFromTimestampMilli ¶
CreateFromTimestampMilli creates a Carbon instance from a given timestamp with millisecond precision.
Example ¶
fmt.Println(carbon.CreateFromTimestampMilli(-1).ToString()) fmt.Println(carbon.CreateFromTimestampMilli(0).ToString()) fmt.Println(carbon.CreateFromTimestampMilli(1, carbon.PRC).ToString()) fmt.Println(carbon.CreateFromTimestampMilli(1649735755981, carbon.PRC).ToString())
Output: 1969-12-31 23:59:59.999 +0000 UTC 1970-01-01 00:00:00 +0000 UTC 1970-01-01 08:00:00.001 +0800 CST 2022-04-12 11:55:55.981 +0800 CST
func CreateFromTimestampNano ¶
CreateFromTimestampNano creates a Carbon instance from a given timestamp with nanosecond precision.
Example ¶
fmt.Println(carbon.CreateFromTimestampNano(-1).ToString()) fmt.Println(carbon.CreateFromTimestampNano(0).ToString()) fmt.Println(carbon.CreateFromTimestampNano(1, carbon.PRC).ToString()) fmt.Println(carbon.CreateFromTimestampNano(1649735755981566888, carbon.PRC).ToString())
Output: 1969-12-31 23:59:59.999999999 +0000 UTC 1970-01-01 00:00:00 +0000 UTC 1970-01-01 08:00:00.000000001 +0800 CST 2022-04-12 11:55:55.981566888 +0800 CST
func EpochValue ¶ added in v2.6.7
func EpochValue() *Carbon
EpochValue returns the unix epoch value of Carbon instance.
Example ¶
fmt.Println(carbon.EpochValue().ToString())
Output: 1970-01-01 00:00:00 +0000 UTC
func Max ¶
Max returns the maximum Carbon instance from some given Carbon instances.
Example ¶
c1 := carbon.Parse("2020-08-01")
c2 := carbon.Parse("2020-08-05")
c3 := carbon.Parse("2020-08-06")
fmt.Println(carbon.Max(c1, c2, c3).ToString())
Output: 2020-08-06 00:00:00 +0000 UTC
func MaxValue ¶ added in v2.5.1
func MaxValue() *Carbon
MaxValue returns the maximum value of Carbon instance.
Example ¶
fmt.Println(carbon.MaxValue().ToString())
Output: 9999-12-31 23:59:59.999999999 +0000 UTC
func Min ¶
Min returns the minimum Carbon instance from some given Carbon instances.
Example ¶
c1 := carbon.Parse("2020-08-01")
c2 := carbon.Parse("2020-08-05")
c3 := carbon.Parse("2020-08-06")
fmt.Println(carbon.Min(c1, c2, c3).ToString())
Output: 2020-08-01 00:00:00 +0000 UTC
func MinValue ¶ added in v2.5.1
func MinValue() *Carbon
MinValue returns the minimum value of Carbon instance.
Example ¶
fmt.Println(carbon.MinValue().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC
func NewCarbon ¶
NewCarbon returns a new Carbon instance.
Example ¶
loc, _ := time.LoadLocation(carbon.PRC)
t1, _ := time.Parse(carbon.DateTimeLayout, "2020-08-05 13:14:15")
t2, _ := time.ParseInLocation(carbon.DateTimeLayout, "2020-08-05 13:14:15", loc)
fmt.Println("go zero time:", time.Time{}.String())
fmt.Println("go zero time with timezone:", time.Time{}.In(loc).String())
fmt.Println("go valid time:", t1.String())
fmt.Println("go valid time with timezone:", t2.In(loc).String())
fmt.Println("carbon zero time:", carbon.NewCarbon().ToString())
fmt.Println("carbon zero time with timezone:", carbon.NewCarbon().SetLocation(loc).ToString())
fmt.Println("carbon valid time:", carbon.NewCarbon(t1).ToString())
fmt.Println("carbon valid time with timezone:", carbon.NewCarbon(t2).SetLocation(loc).ToString())
Output: go zero time: 0001-01-01 00:00:00 +0000 UTC go zero time with timezone: 0001-01-01 08:05:43 +0805 LMT go valid time: 2020-08-05 13:14:15 +0000 UTC go valid time with timezone: 2020-08-05 13:14:15 +0800 CST carbon zero time: 0001-01-01 00:00:00 +0000 UTC carbon zero time with timezone: 0001-01-01 08:05:43 +0805 LMT carbon valid time: 2020-08-05 13:14:15 +0000 UTC carbon valid time with timezone: 2020-08-05 13:14:15 +0800 CST
func Now ¶
Now returns a Carbon instance for now.
Example ¶
defer carbon.ClearTestNow()
carbon.SetTestNow(carbon.Parse("2020-08-05"))
fmt.Println(carbon.Now().ToString())
fmt.Println(carbon.Now(carbon.PRC).ToString())
Output: 2020-08-05 00:00:00 +0000 UTC 2020-08-05 08:00:00 +0800 CST
func Parse ¶
Parse parses a time string as a Carbon instance by default layouts.
Note: it doesn't support parsing timestamp string.
Example ¶
fmt.Println(carbon.Parse("2020-8-5").ToString())
fmt.Println(carbon.Parse("2020-8-05").ToString())
fmt.Println(carbon.Parse("2020-08-05").ToString())
fmt.Println(carbon.Parse("2020-8-5 1:2:3").ToString())
fmt.Println(carbon.Parse("2020-08-05 1:2:03").ToString())
fmt.Println(carbon.Parse("2020-08-05 1:02:03").ToString())
fmt.Println(carbon.Parse("2020-08-05 01:02:03").ToString())
fmt.Println(carbon.Parse("2023-01-08T09:02:48").ToString())
fmt.Println(carbon.Parse("2023-1-8T09:02:48").ToString())
fmt.Println(carbon.Parse("2023-01-08T9:2:48").ToString())
fmt.Println(carbon.Parse("2023-01-8T9:2:48").ToString())
fmt.Println(carbon.Parse("0000-01-01 00:00:00").ToString())
fmt.Println(carbon.Parse("0001-01-01 00:00:00").ToString())
Output: 2020-08-05 00:00:00 +0000 UTC 2020-08-05 00:00:00 +0000 UTC 2020-08-05 00:00:00 +0000 UTC 2020-08-05 01:02:03 +0000 UTC 2020-08-05 01:02:03 +0000 UTC 2020-08-05 01:02:03 +0000 UTC 2020-08-05 01:02:03 +0000 UTC 2023-01-08 09:02:48 +0000 UTC 2023-01-08 09:02:48 +0000 UTC 2023-01-08 09:02:48 +0000 UTC 2023-01-08 09:02:48 +0000 UTC 0000-01-01 00:00:00 +0000 UTC 0001-01-01 00:00:00 +0000 UTC
func ParseByFormat ¶
ParseByFormat parses a time string as a Carbon instance by a confirmed format.
Note: If the letter used conflicts with the format sign, please use the escape character "\" to escape the letter
Example ¶
fmt.Println(carbon.ParseByFormat("2020-08-05", carbon.DateFormat).ToString())
fmt.Println(carbon.ParseByFormat("2020-08-05 13:14:15", carbon.DateTimeFormat, carbon.PRC).ToString())
fmt.Println(carbon.ParseByFormat("2020|08|05 13:14:15", "Y|m|d H:i:s").ToString())
fmt.Println(carbon.ParseByFormat("It is 2020-08-05 13:14:15", "\\I\\t \\i\\s Y-m-d H:i:s").ToString())
fmt.Println(carbon.ParseByFormat("今天是 2020年08月05日13时14分15秒", "今天是 Y年m月d日H时i分s秒").ToString())
Output: 2020-08-05 00:00:00 +0000 UTC 2020-08-05 13:14:15 +0800 CST 2020-08-05 13:14:15 +0000 UTC 2020-08-05 13:14:15 +0000 UTC 2020-08-05 13:14:15 +0000 UTC
func ParseByFormats ¶ added in v2.6.5
ParseByFormats parses a time string as a Carbon instance by multiple fuzzy formats.
Note: it doesn't support parsing timestamp string.
Example ¶
c := carbon.ParseByFormats("2020|08|05 13|14|15", []string{"Y|m|d H|i|s", "y|m|d h|i|s"})
fmt.Println(c.ToString())
fmt.Println(c.CurrentLayout())
Output: 2020-08-05 13:14:15 +0000 UTC 2006|01|02 15|04|05
func ParseByLayout ¶
ParseByLayout parses a time string as a Carbon instance by a confirmed layout.
Note: it doesn't support parsing timestamp string.
Example ¶
fmt.Println(carbon.ParseByLayout("2020-08-05", carbon.DateLayout).ToString())
fmt.Println(carbon.ParseByLayout("2020-08-05 13:14:15", carbon.DateTimeLayout, carbon.PRC).ToString())
fmt.Println(carbon.ParseByLayout("2020|08|05 13:14:15", "2006|01|02 15:04:05").ToString())
fmt.Println(carbon.ParseByLayout("It is 2020-08-05 13:14:15", "It is 2006-01-02 15:04:05").ToString())
fmt.Println(carbon.ParseByLayout("今天是 2020年08月05日13时14分15秒", "今天是 2006年01月02日15时04分05秒").ToString())
Output: 2020-08-05 00:00:00 +0000 UTC 2020-08-05 13:14:15 +0800 CST 2020-08-05 13:14:15 +0000 UTC 2020-08-05 13:14:15 +0000 UTC 2020-08-05 13:14:15 +0000 UTC
func ParseByLayouts ¶ added in v2.6.5
ParseByLayouts parses a time string as a Carbon instance by multiple fuzzy layouts.
Note: it doesn't support parsing timestamp string.
Example ¶
c := carbon.ParseByLayouts("2020|08|05 13|14|15", []string{"2006|01|02 15|04|05", "2006|1|2 3|4|5"})
fmt.Println(c.ToString())
fmt.Println(c.CurrentLayout())
Output: 2020-08-05 13:14:15 +0000 UTC 2006|01|02 15|04|05
func SetFormat ¶ added in v2.6.0
SetFormat sets globally default format.
Example ¶
defer carbon.SetFormat(carbon.DateTimeFormat)
fmt.Println("current layout:", carbon.SetFormat(carbon.DateTimeFormat).CurrentLayout())
fmt.Println("current layout:", carbon.SetFormat(carbon.TimeFormat).CurrentLayout())
Output: current layout: 2006-01-02 15:04:05 current layout: 15:04:05
func SetLayout ¶ added in v2.6.0
SetLayout sets globally default layout.
Example ¶
defer carbon.SetLayout(carbon.DateTimeLayout)
fmt.Println("current layout:", carbon.SetLayout(carbon.DateTimeLayout).CurrentLayout())
fmt.Println("current layout:", carbon.SetLayout(carbon.TimeLayout).CurrentLayout())
Output: current layout: 2006-01-02 15:04:05 current layout: 15:04:05
func SetLocale ¶
SetLocale sets globally default locale.
Example ¶
defer carbon.SetLocale("en")
carbon.SetLocale("zh-CN")
c := carbon.Parse("2020-08-05")
fmt.Println(c.Constellation())
fmt.Println(c.Season())
fmt.Println(c.ToMonthString())
fmt.Println(c.ToShortMonthString())
fmt.Println(c.ToWeekString())
fmt.Println(c.ToShortWeekString())
Output: 狮子座 夏季 八月 8月 星期三 周三
func SetLocation ¶
SetLocation sets globally default location.
Example ¶
defer carbon.SetLocation(time.UTC)
utcTZ, _ := time.LoadLocation(carbon.UTC)
fmt.Println("UTC zone location:", carbon.SetLocation(utcTZ).Timezone())
fmt.Println("UTC zone name:", carbon.SetLocation(utcTZ).ZoneName())
fmt.Println("UTC zone offset:", carbon.SetLocation(utcTZ).ZoneOffset())
prcTZ, _ := time.LoadLocation(carbon.PRC)
fmt.Println("PRC zone location:", carbon.SetLocation(prcTZ).Timezone())
fmt.Println("PRC zone name:", carbon.SetLocation(prcTZ).ZoneName())
fmt.Println("PRC zone offset:", carbon.SetLocation(prcTZ).ZoneOffset())
japanTZ, _ := time.LoadLocation(carbon.Japan)
fmt.Println("Japan zone location:", carbon.SetLocation(japanTZ).Timezone())
fmt.Println("Japan zone name:", carbon.SetLocation(japanTZ).ZoneName())
fmt.Println("Japan zone offset:", carbon.SetLocation(japanTZ).ZoneOffset())
Output: UTC zone location: UTC UTC zone name: UTC UTC zone offset: 0 PRC zone location: PRC PRC zone name: LMT PRC zone offset: 29143 Japan zone location: Japan Japan zone name: LMT Japan zone offset: 33539
func SetTimezone ¶
SetTimezone sets globally default timezone.
Example ¶
defer carbon.SetTimezone(carbon.UTC)
fmt.Println("UTC zone location:", carbon.SetTimezone(carbon.UTC).Timezone())
fmt.Println("UTC zone name:", carbon.SetTimezone(carbon.UTC).ZoneName())
fmt.Println("UTC zone offset:", carbon.SetTimezone(carbon.UTC).ZoneOffset())
fmt.Println("PRC zone location:", carbon.SetTimezone(carbon.PRC).Timezone())
fmt.Println("PRC zone name:", carbon.SetTimezone(carbon.PRC).ZoneName())
fmt.Println("PRC zone offset:", carbon.SetTimezone(carbon.PRC).ZoneOffset())
fmt.Println("Japan zone location:", carbon.SetTimezone(carbon.Japan).Timezone())
fmt.Println("Japan zone name:", carbon.SetTimezone(carbon.Japan).ZoneName())
fmt.Println("Japan zone offset:", carbon.SetTimezone(carbon.Japan).ZoneOffset())
Output: UTC zone location: UTC UTC zone name: UTC UTC zone offset: 0 PRC zone location: PRC PRC zone name: LMT PRC zone offset: 29143 Japan zone location: Japan Japan zone name: LMT Japan zone offset: 33539
func SetWeekStartsAt ¶
SetWeekStartsAt sets globally default start day of the week.
Example ¶
defer carbon.SetWeekStartsAt(carbon.Monday) fmt.Println(carbon.SetWeekStartsAt(carbon.Sunday).WeekStartsAt()) fmt.Println(carbon.SetWeekStartsAt(carbon.Monday).WeekStartsAt())
Output: Sunday Monday
func SetWeekendDays ¶ added in v2.6.3
SetWeekendDays sets globally default weekend days of the week.
Example ¶
defer carbon.SetWeekendDays([]carbon.Weekday{
carbon.Saturday, carbon.Sunday,
})
carbon.SetWeekendDays([]carbon.Weekday{
carbon.Saturday,
})
fmt.Println(carbon.Parse("2025-04-12").IsWeekend())
fmt.Println(carbon.Parse("2025-04-13").IsWeekend())
carbon.SetWeekendDays([]carbon.Weekday{
carbon.Sunday,
})
fmt.Println(carbon.Parse("2025-04-12").IsWeekend())
fmt.Println(carbon.Parse("2025-04-13").IsWeekend())
Output: true false false true
func Tomorrow ¶
Tomorrow returns a Carbon instance for tomorrow.
Example ¶
defer carbon.ClearTestNow()
carbon.SetTestNow(carbon.Parse("2020-08-05"))
fmt.Println(carbon.Tomorrow().ToString())
fmt.Println(carbon.Tomorrow(carbon.PRC).ToString())
Output: 2020-08-06 00:00:00 +0000 UTC 2020-08-06 08:00:00 +0800 CST
func Yesterday ¶
Yesterday returns a Carbon instance for yesterday.
Example ¶
defer carbon.ClearTestNow()
carbon.SetTestNow(carbon.Parse("2020-08-05"))
fmt.Println(carbon.Yesterday().ToString())
fmt.Println(carbon.Yesterday(carbon.PRC).ToString())
Output: 2020-08-04 00:00:00 +0000 UTC 2020-08-04 08:00:00 +0800 CST
func ZeroValue ¶ added in v2.6.7
func ZeroValue() *Carbon
ZeroValue returns the zero value of Carbon instance.
Example ¶
fmt.Println(carbon.ZeroValue().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC
func (*Carbon) AddCenturies ¶
AddCenturies adds some centuries.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddCenturies(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddCenturies(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddCenturies(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2120-01-01 13:14:15 +0000 UTC 2220-01-01 13:14:15 +0000 UTC
func (*Carbon) AddCenturiesNoOverflow ¶
AddCenturiesNoOverflow adds some centuries without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddCenturiesNoOverflow(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddCenturiesNoOverflow(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddCenturiesNoOverflow(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2120-01-01 13:14:15 +0000 UTC 2220-01-01 13:14:15 +0000 UTC
func (*Carbon) AddCentury ¶
AddCentury adds one century.
Example ¶
defer carbon.ClearTestNow()
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddCentury().ToString())
Output: 2120-01-01 13:14:15 +0000 UTC
func (*Carbon) AddCenturyNoOverflow ¶
AddCenturyNoOverflow adds one century without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddCenturyNoOverflow().ToString())
Output: 2120-01-01 13:14:15 +0000 UTC
func (*Carbon) AddDay ¶
AddDay adds one day.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddDay().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").AddDay().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddDay().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").AddDay().ToDateString())
Output: 2020-01-02 2020-02-29 2020-03-01 2020-12-01
func (*Carbon) AddDays ¶
AddDays adds some days.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddDays(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddDays(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddDays(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddDays(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").AddDays(2).ToDateString())
Output: 2020-01-01 2020-01-02 2020-01-03 2020-03-03 2020-09-02
func (*Carbon) AddDecade ¶
AddDecade adds one decade.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDecade().ToString())
Output: 2030-01-01 13:14:15 +0000 UTC
func (*Carbon) AddDecadeNoOverflow ¶
AddDecadeNoOverflow adds one decade without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDecadeNoOverflow().ToString())
Output: 2030-01-01 13:14:15 +0000 UTC
func (*Carbon) AddDecades ¶
AddDecades adds some decades.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDecades(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDecades(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDecades(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2030-01-01 13:14:15 +0000 UTC 2040-01-01 13:14:15 +0000 UTC
func (*Carbon) AddDecadesNoOverflow ¶
AddDecadesNoOverflow adds some decades without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDecadesNoOverflow(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDecadesNoOverflow(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDecadesNoOverflow(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2030-01-01 13:14:15 +0000 UTC 2040-01-01 13:14:15 +0000 UTC
func (*Carbon) AddDuration ¶
AddDuration adds duration.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDuration("10h").ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDuration("10.5h").ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDuration("10m").ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddDuration("10.5m").ToString())
Output: 2020-01-01 23:14:15 +0000 UTC 2020-01-01 23:44:15 +0000 UTC 2020-01-01 13:24:15 +0000 UTC 2020-01-01 13:24:45 +0000 UTC
func (*Carbon) AddHour ¶
AddHour adds one hour.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").AddHour().ToString())
Output: 2020-08-05 14:14:15 +0000 UTC
func (*Carbon) AddHours ¶
AddHours adds some hours.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddHours(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddHours(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddHours(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 14:14:15 +0000 UTC 2020-01-01 15:14:15 +0000 UTC
func (*Carbon) AddMicrosecond ¶
AddMicrosecond adds one microsecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").AddMicrosecond().ToString())
Output: 2020-08-05 13:14:15.000001 +0000 UTC
func (*Carbon) AddMicroseconds ¶
AddMicroseconds adds some microseconds.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddMicroseconds(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddMicroseconds(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddMicroseconds(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:14:15.000001 +0000 UTC 2020-01-01 13:14:15.000002 +0000 UTC
func (*Carbon) AddMillisecond ¶
AddMillisecond adds one millisecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").AddMillisecond().ToString())
Output: 2020-08-05 13:14:15.001 +0000 UTC
func (*Carbon) AddMilliseconds ¶
AddMilliseconds adds some milliseconds.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddMilliseconds(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddMilliseconds(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddMilliseconds(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:14:15.001 +0000 UTC 2020-01-01 13:14:15.002 +0000 UTC
func (*Carbon) AddMinute ¶
AddMinute adds one minute.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").AddMinute().ToString())
Output: 2020-08-05 13:15:15 +0000 UTC
func (*Carbon) AddMinutes ¶
AddMinutes adds some minutes.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddMinutes(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddMinutes(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddMinutes(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:15:15 +0000 UTC 2020-01-01 13:16:15 +0000 UTC
func (*Carbon) AddMonth ¶
AddMonth adds one month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddMonth().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").AddMonth().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddMonth().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").AddMonth().ToDateString())
Output: 2020-02-01 2020-03-28 2020-03-29 2020-12-30
func (*Carbon) AddMonthNoOverflow ¶
AddMonthNoOverflow adds one month without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddMonthNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").AddMonthNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddMonthNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").AddMonthNoOverflow().ToDateString())
Output: 2020-02-01 2020-03-28 2020-03-29 2020-12-30
func (*Carbon) AddMonths ¶
AddMonths adds some months.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddMonths(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddMonths(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddMonths(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddMonths(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").AddMonths(2).ToDateString())
Output: 2020-01-01 2020-02-01 2020-03-01 2020-05-29 2020-10-31
func (*Carbon) AddMonthsNoOverflow ¶
AddMonthsNoOverflow adds some months without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddMonthsNoOverflow(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddMonthsNoOverflow(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddMonthsNoOverflow(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddMonthsNoOverflow(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").AddMonthsNoOverflow(2).ToDateString())
Output: 2020-01-01 2020-02-01 2020-03-01 2020-05-29 2020-10-31
func (*Carbon) AddNanosecond ¶
AddNanosecond adds one nanosecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").AddNanosecond().ToString())
Output: 2020-08-05 13:14:15.000000001 +0000 UTC
func (*Carbon) AddNanoseconds ¶
AddNanoseconds adds some nanoseconds.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddNanoseconds(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddNanoseconds(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddNanoseconds(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:14:15.000000001 +0000 UTC 2020-01-01 13:14:15.000000002 +0000 UTC
func (*Carbon) AddQuarter ¶
AddQuarter adds one quarter
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddQuarter().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").AddQuarter().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddQuarter().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").AddQuarter().ToDateString())
Output: 2020-04-01 2020-05-28 2020-05-29 2021-03-02
func (*Carbon) AddQuarterNoOverflow ¶
AddQuarterNoOverflow adds one quarter without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddQuarterNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").AddQuarterNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddQuarterNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").AddQuarterNoOverflow().ToDateString())
Output: 2020-04-01 2020-05-28 2020-05-29 2021-02-28
func (*Carbon) AddQuarters ¶
AddQuarters adds some quarters
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddQuarters(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddQuarters(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddQuarters(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddQuarters(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").AddQuarters(2).ToDateString())
Output: 2020-01-01 2020-04-01 2020-07-01 2020-11-29 2021-03-03
func (*Carbon) AddQuartersNoOverflow ¶
AddQuartersNoOverflow adds quarters without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddQuartersNoOverflow(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddQuartersNoOverflow(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddQuartersNoOverflow(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddQuartersNoOverflow(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").AddQuartersNoOverflow(2).ToDateString())
Output: 2020-01-01 2020-04-01 2020-07-01 2020-11-29 2021-02-28
func (*Carbon) AddSecond ¶
AddSecond adds one second.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").AddSecond().ToString())
Output: 2020-08-05 13:14:16 +0000 UTC
func (*Carbon) AddSeconds ¶
AddSeconds adds some seconds.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddSeconds(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddSeconds(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").AddSeconds(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:14:16 +0000 UTC 2020-01-01 13:14:17 +0000 UTC
func (*Carbon) AddWeek ¶
AddWeek adds one week.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddWeek().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").AddWeek().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddWeek().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").AddWeek().ToDateString())
Output: 2020-01-08 2020-03-06 2020-03-07 2020-12-07
func (*Carbon) AddWeeks ¶
AddWeeks adds some weeks.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddWeeks(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddWeeks(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddWeeks(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddWeeks(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").AddWeeks(2).ToDateString())
Output: 2020-01-01 2020-01-08 2020-01-15 2020-03-21 2020-09-14
func (*Carbon) AddYear ¶
AddYear adds one year.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddYear().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").AddYear().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddYear().ToDateString())
Output: 2021-01-01 2021-02-28 2021-03-01
func (*Carbon) AddYearNoOverflow ¶
AddYearNoOverflow adds one year without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddYearNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").AddYearNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddYearNoOverflow().ToDateString())
Output: 2021-01-01 2021-02-28 2021-02-28
func (*Carbon) AddYears ¶
AddYears adds some years.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddYears(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddYears(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddYears(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddYears(3).ToDateString())
Output: 2020-01-01 2021-01-01 2022-01-01 2023-03-01
func (*Carbon) AddYearsNoOverflow ¶
AddYearsNoOverflow adds some years without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").AddYearsNoOverflow(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddYearsNoOverflow(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").AddYearsNoOverflow(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").AddYearsNoOverflow(3).ToDateString())
Output: 2020-01-01 2021-01-01 2022-01-01 2023-02-28
func (*Carbon) Age ¶
Age gets age like 18.
Example ¶
fmt.Println(carbon.Now().AddYears(18).Age()) fmt.Println(carbon.Now().SubYears(18).Age())
Output: 0 18
func (*Carbon) Between ¶
Between reports whether between two times, including the start and end time.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Between(carbon.Parse("2020-08-05 21:00:00"), carbon.Parse("2020-08-05 23:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Between(carbon.Parse("2020-08-05 22:00:00"), carbon.Parse("2020-08-05 23:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Between(carbon.Parse("2020-08-05 21:00:00"), carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Between(carbon.Parse("2020-08-05 22:00:00"), carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Between(carbon.Parse("2021-08-05 22:00:00"), carbon.Parse("2019-08-05 22:00:00")))
Output: true false false false false
func (*Carbon) BetweenIncludedBoth ¶
BetweenIncludedBoth reports whether between two times, including the start and end time.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedBoth(carbon.Parse("2020-08-05 22:00:00"), carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedBoth(carbon.Parse("2020-08-05 21:00:00"), carbon.Parse("2020-08-05 23:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedBoth(carbon.Parse("2020-08-05 22:00:00"), carbon.Parse("2020-08-05 23:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedBoth(carbon.Parse("2020-08-05 21:00:00"), carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedBoth(carbon.Parse("2022-08-05 22:00:00"), carbon.Parse("2021-08-05 22:00:00")))
Output: true true true true false
func (*Carbon) BetweenIncludedEnd ¶
BetweenIncludedEnd reports whether between two times, including the end time.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedEnd(carbon.Parse("2020-08-05 22:00:00"), carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedEnd(carbon.Parse("2020-08-05 21:00:00"), carbon.Parse("2020-08-05 23:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedEnd(carbon.Parse("2020-08-05 22:00:00"), carbon.Parse("2020-08-05 23:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedEnd(carbon.Parse("2020-08-05 21:00:00"), carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedEnd(carbon.Parse("2022-08-05 22:00:00"), carbon.Parse("2021-08-05 22:00:00")))
Output: false true false true false
func (*Carbon) BetweenIncludedStart ¶
BetweenIncludedStart reports whether between two times, including the start time.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedStart(carbon.Parse("2020-08-05 22:00:00"), carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedStart(carbon.Parse("2020-08-05 21:00:00"), carbon.Parse("2020-08-05 23:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedStart(carbon.Parse("2020-08-05 22:00:00"), carbon.Parse("2020-08-05 23:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedStart(carbon.Parse("2020-08-05 21:00:00"), carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").BetweenIncludedStart(carbon.Parse("2022-08-05 22:00:00"), carbon.Parse("2021-08-05 22:00:00")))
Output: false true true false false
func (*Carbon) Century ¶
Century gets current century like 21.
Example ¶
fmt.Println(carbon.Parse("1990-08-05").Century())
fmt.Println(carbon.Parse("2021-08-05").Century())
Output: 20 21
func (*Carbon) Closest ¶
Closest returns the closest Carbon instance from some given Carbon instances.
Example ¶
c1 := carbon.Parse("2020-08-01")
c2 := carbon.Parse("2020-08-05")
c3 := carbon.Parse("2020-08-06")
fmt.Println(c1.Closest(c2, c3).ToString())
fmt.Println(c2.Closest(c1, c3).ToString())
fmt.Println(c3.Closest(c2, c1).ToString())
Output: 2020-08-05 00:00:00 +0000 UTC 2020-08-06 00:00:00 +0000 UTC 2020-08-05 00:00:00 +0000 UTC
func (*Carbon) Compare ¶
Compare compares by an operator.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Compare(">=", carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Compare("<", carbon.Parse("2020-08-05 22:00:00")))
Output: true false
func (*Carbon) Constellation ¶
Constellation gets constellation name like "Aries", i18n is supported.
Example ¶
fmt.Println(carbon.Parse("2020-01-05").Constellation())
fmt.Println(carbon.Parse("2020-02-05").Constellation())
fmt.Println(carbon.Parse("2020-03-05").Constellation())
fmt.Println(carbon.Parse("2020-04-05").Constellation())
fmt.Println(carbon.Parse("2020-05-05").Constellation())
fmt.Println(carbon.Parse("2020-06-05").Constellation())
fmt.Println(carbon.Parse("2020-07-05").Constellation())
fmt.Println(carbon.Parse("2020-08-05").Constellation())
fmt.Println(carbon.Parse("2020-09-05").Constellation())
fmt.Println(carbon.Parse("2020-10-05").Constellation())
fmt.Println(carbon.Parse("2020-11-05").Constellation())
fmt.Println(carbon.Parse("2020-12-05").Constellation())
Output: Capricorn Aquarius Pisces Aries Taurus Gemini Cancer Leo Virgo Libra Scorpio Sagittarius
func (*Carbon) Copy ¶ added in v2.6.0
Copy returns a copy of the Carbon instance.
Example ¶
oldCarbon := carbon.Parse("2020-08-05")
newCarbon := oldCarbon.Copy()
oldCarbon = oldCarbon.AddDay().SetLayout(carbon.DateTimeLayout).SetLocale("zh-CN").SetWeekStartsAt(carbon.Sunday)
fmt.Printf("old time: %s\n", oldCarbon.ToString())
fmt.Printf("new time: %s\n", newCarbon.ToString())
fmt.Printf("old layout: %s\n", oldCarbon.CurrentLayout())
fmt.Printf("new layout: %s\n", newCarbon.CurrentLayout())
fmt.Printf("old locale: %s\n", oldCarbon.Locale())
fmt.Printf("new locale: %s\n", newCarbon.Locale())
fmt.Printf("old week starts at: %s\n", oldCarbon.WeekStartsAt())
fmt.Printf("new week starts at: %s\n", newCarbon.WeekStartsAt())
Output: old time: 2020-08-06 00:00:00 +0000 UTC new time: 2020-08-05 00:00:00 +0000 UTC old layout: 2006-01-02 15:04:05 new layout: 2006-01-02 old locale: zh-CN new locale: en old week starts at: Sunday new week starts at: Monday
func (*Carbon) CurrentLayout ¶ added in v2.5.4
CurrentLayout returns the layout used for parsing the time string.
Example ¶
fmt.Println(carbon.Parse("now").CurrentLayout())
fmt.Println(carbon.ParseByLayout("13:14:15", carbon.TimeLayout).CurrentLayout())
fmt.Println(carbon.ParseByLayout("2020-08-05", carbon.DateLayout).CurrentLayout())
Output: 2006-01-02 15:04:05 15:04:05 2006-01-02
func (*Carbon) Date ¶
Date gets current year, month, and day like 2020, 8, 5.
Example ¶
year, month, day := carbon.Parse("2020-08-05 13:14:15.999999999").Date()
fmt.Println(year)
fmt.Println(month)
fmt.Println(day)
Output: 2020 8 5
func (*Carbon) DateMicro ¶
DateMicro gets current year, month, day and microsecond like 2020, 8, 5, 999999.
Example ¶
year, month, day, microsecond := carbon.Parse("2020-08-05 13:14:15.999999999").DateMicro()
fmt.Println(year)
fmt.Println(month)
fmt.Println(day)
fmt.Println(microsecond)
Output: 2020 8 5 999999
func (*Carbon) DateMilli ¶
DateMilli gets current year, month, day and millisecond like 2020, 8, 5, 999.
Example ¶
year, month, day, millisecond := carbon.Parse("2020-08-05 13:14:15.999999999").DateMilli()
fmt.Println(year)
fmt.Println(month)
fmt.Println(day)
fmt.Println(millisecond)
Output: 2020 8 5 999
func (*Carbon) DateNano ¶
DateNano gets current year, month, day and nanosecond like 2020, 8, 5, 999999999.
Example ¶
year, month, day, nanosecond := carbon.Parse("2020-08-05 13:14:15.999999999").DateNano()
fmt.Println(year)
fmt.Println(month)
fmt.Println(day)
fmt.Println(nanosecond)
Output: 2020 8 5 999999999
func (*Carbon) DateTime ¶
DateTime gets current year, month, day, hour, minute, and second like 2020, 8, 5, 13, 14, 15.
Example ¶
year, month, day, hour, minute, second := carbon.Parse("2020-08-05 13:14:15.999999999").DateTime()
fmt.Println(year)
fmt.Println(month)
fmt.Println(day)
fmt.Println(hour)
fmt.Println(minute)
fmt.Println(second)
Output: 2020 8 5 13 14 15
func (*Carbon) DateTimeMicro ¶
DateTimeMicro gets current year, month, day, hour, minute, second and microsecond like 2020, 8, 5, 13, 14, 15, 999999.
Example ¶
year, month, day, hour, minute, second, microsecond := carbon.Parse("2020-08-05 13:14:15.999999999").DateTimeMicro()
fmt.Println(year)
fmt.Println(month)
fmt.Println(day)
fmt.Println(hour)
fmt.Println(minute)
fmt.Println(second)
fmt.Println(microsecond)
Output: 2020 8 5 13 14 15 999999
func (*Carbon) DateTimeMilli ¶
DateTimeMilli gets current year, month, day, hour, minute, second and millisecond like 2020, 8, 5, 13, 14, 15, 999.
Example ¶
year, month, day, hour, minute, second, millisecond := carbon.Parse("2020-08-05 13:14:15.999999999").DateTimeMilli()
fmt.Println(year)
fmt.Println(month)
fmt.Println(day)
fmt.Println(hour)
fmt.Println(minute)
fmt.Println(second)
fmt.Println(millisecond)
Output: 2020 8 5 13 14 15 999
func (*Carbon) DateTimeNano ¶
DateTimeNano gets current year, month, day, hour, minute, second and nanosecond like 2020, 8, 5, 13, 14, 15, 999999999.
Example ¶
year, month, day, hour, minute, second, nanosecond := carbon.Parse("2020-08-05 13:14:15.999999999").DateTimeNano()
fmt.Println(year)
fmt.Println(month)
fmt.Println(day)
fmt.Println(hour)
fmt.Println(minute)
fmt.Println(second)
fmt.Println(nanosecond)
Output: 2020 8 5 13 14 15 999999999
func (*Carbon) Day ¶
Day gets current day like 5.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").Day())
Output: 5
func (*Carbon) DayOfMonth ¶
DayOfMonth gets day of month like 30.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").DayOfMonth())
fmt.Println(carbon.Parse("2020-01-05").DayOfMonth())
fmt.Println(carbon.Parse("2020-01-31").DayOfMonth())
Output: 1 5 31
func (*Carbon) DayOfWeek ¶
DayOfWeek gets day of week like 6, start from 1.
Example ¶
fmt.Println(carbon.Parse("2020-08-03").DayOfWeek())
fmt.Println(carbon.Parse("2020-08-04").DayOfWeek())
fmt.Println(carbon.Parse("2020-08-05").DayOfWeek())
Output: 1 2 3
func (*Carbon) DayOfYear ¶
DayOfYear gets day of year like 365.
Example ¶
fmt.Println(carbon.Parse("2020-01-05").DayOfYear())
fmt.Println(carbon.Parse("2020-02-05").DayOfYear())
fmt.Println(carbon.Parse("2020-03-05").DayOfYear())
fmt.Println(carbon.Parse("2020-04-05").DayOfYear())
Output: 5 36 65 96
func (*Carbon) DaysInMonth ¶
DaysInMonth gets total days in month like 30.
Example ¶
fmt.Println(carbon.Parse("2020-01-05").DaysInMonth())
fmt.Println(carbon.Parse("2020-02-05").DaysInMonth())
fmt.Println(carbon.Parse("2020-03-05").DaysInMonth())
fmt.Println(carbon.Parse("2020-04-05").DaysInMonth())
Output: 31 29 31 30
func (*Carbon) DaysInYear ¶
DaysInYear gets total days in year like 365.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").DaysInYear())
fmt.Println(carbon.Parse("2021-08-05").DaysInYear())
Output: 366 365
func (*Carbon) Decade ¶
Decade gets current decade like 20.
Example ¶
fmt.Println(carbon.Parse("2010-08-05").Decade())
fmt.Println(carbon.Parse("2011-08-05").Decade())
fmt.Println(carbon.Parse("2020-08-05").Decade())
fmt.Println(carbon.Parse("2021-08-05").Decade())
Output: 10 10 20 20
func (*Carbon) DiffAbsInDays ¶
DiffAbsInDays gets the difference in days with absolute value.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInDays(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInDays(carbon.Parse("2020-08-04 13:14:59")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInDays(carbon.Parse("2020-08-06 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInDays(carbon.Parse("2020-08-04 13:00:00")))
Output: 0 0 1 1
func (*Carbon) DiffAbsInDuration ¶
DiffAbsInDuration gets the difference in duration with absolute value.
Example ¶
defer carbon.ClearTestNow()
now := carbon.Parse("2020-08-05 13:14:15")
carbon.SetTestNow(now)
fmt.Println(now.Copy().DiffAbsInDuration(now))
fmt.Println(now.Copy().AddYearsNoOverflow(1).DiffAbsInDuration(now).String())
fmt.Println(now.Copy().SubYearsNoOverflow(1).DiffAbsInDuration(now).String())
fmt.Println(now.Copy().AddMonthsNoOverflow(1).DiffAbsInDuration(now).String())
fmt.Println(now.Copy().SubMonthsNoOverflow(1).DiffAbsInDuration(now).String())
fmt.Println(now.Copy().AddDays(1).DiffAbsInDuration(now).String())
fmt.Println(now.Copy().SubDays(1).DiffAbsInDuration(now).String())
Output: 0s 8760h0m0s 8784h0m0s 744h0m0s 744h0m0s 24h0m0s 24h0m0s
func (*Carbon) DiffAbsInHours ¶
DiffAbsInHours gets the difference in hours with absolute value.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInHours(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInHours(carbon.Parse("2020-08-05 14:13:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInHours(carbon.Parse("2020-08-05 12:14:00")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInHours(carbon.Parse("2020-08-05 14:14:15")))
Output: 0 0 1 1
func (*Carbon) DiffAbsInMinutes ¶
DiffAbsInMinutes gets the difference in minutes with absolute value.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInMinutes(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInMinutes(carbon.Parse("2020-08-05 13:15:10")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInMinutes(carbon.Parse("2020-08-05 13:13:00")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInMinutes(carbon.Parse("2020-08-05 13:15:15")))
Output: 0 0 1 1
func (*Carbon) DiffAbsInMonths ¶
DiffAbsInMonths gets the difference in months with absolute value.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInMonths(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInMonths(carbon.Parse("2020-07-28 13:14:00")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInMonths(carbon.Parse("2020-09-06 13:14:59")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInMonths(carbon.Parse("2018-08-28 13:14:59")))
Output: 0 0 1 23
func (*Carbon) DiffAbsInSeconds ¶
DiffAbsInSeconds gets the difference in seconds with absolute value.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInSeconds(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInSeconds(carbon.Parse("2020-08-05 13:14:15.999999")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInSeconds(carbon.Parse("2020-08-05 13:14:20")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInSeconds(carbon.Parse("2020-08-05 13:14:10")))
Output: 0 0 5 5
func (*Carbon) DiffAbsInString ¶
DiffAbsInString gets the difference in string with absolute value, i18n is supported.
Example ¶
defer carbon.ClearTestNow()
now := carbon.Parse("2020-08-05 13:14:15")
carbon.SetTestNow(now)
fmt.Println(now.Copy().DiffAbsInString(now))
fmt.Println(now.Copy().AddYearsNoOverflow(1).DiffAbsInString(now))
fmt.Println(now.Copy().SubYearsNoOverflow(1).DiffAbsInString(now))
fmt.Println(now.Copy().AddMonthsNoOverflow(1).DiffAbsInString(now))
fmt.Println(now.Copy().SubMonthsNoOverflow(1).DiffAbsInString(now))
fmt.Println(now.Copy().AddWeeks(1).DiffAbsInString(now))
fmt.Println(now.Copy().SubWeeks(1).DiffAbsInString(now))
fmt.Println(now.Copy().AddDays(1).DiffAbsInString(now))
fmt.Println(now.Copy().SubDays(1).DiffAbsInString(now))
fmt.Println(now.Copy().AddHours(1).DiffAbsInString(now))
fmt.Println(now.Copy().SubHours(1).DiffAbsInString(now))
fmt.Println(now.Copy().AddMinutes(1).DiffAbsInString(now))
fmt.Println(now.Copy().SubMinutes(1).DiffAbsInString(now))
fmt.Println(now.Copy().AddSeconds(1).DiffAbsInString(now))
fmt.Println(now.Copy().SubSeconds(1).DiffAbsInString(now))
Output: just now 1 year 1 year 1 month 1 month 1 week 1 week 1 day 1 day 1 hour 1 hour 1 minute 1 minute 1 second 1 second
func (*Carbon) DiffAbsInWeeks ¶
DiffAbsInWeeks gets the difference in weeks with absolute value.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInWeeks(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInWeeks(carbon.Parse("2020-07-28 13:14:00")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInWeeks(carbon.Parse("2020-08-12 13:14:15")))
Output: 0 1 1
func (*Carbon) DiffAbsInYears ¶
DiffAbsInYears gets the difference in years with absolute value.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInYears(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-12-31 13:14:15").DiffAbsInYears(carbon.Parse("2021-01-01 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInYears(carbon.Parse("2021-08-28 13:14:59")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffAbsInYears(carbon.Parse("2018-08-28 13:14:59")))
Output: 0 0 1 1
func (*Carbon) DiffForHumans ¶
DiffForHumans gets the difference in a human-readable format, i18n is supported.
Example ¶
defer carbon.ClearTestNow()
now := carbon.Parse("2020-08-05 13:14:15")
carbon.SetTestNow(now)
fmt.Println(now.Copy().DiffForHumans(now))
fmt.Println(carbon.Parse("2020-08-03 13:14:15").DiffForHumans())
fmt.Println(carbon.Parse("2020-08-07 13:14:15").DiffForHumans())
fmt.Println(now.Copy().AddYearsNoOverflow(1).DiffForHumans(now))
fmt.Println(now.Copy().SubYearsNoOverflow(1).DiffForHumans(now))
fmt.Println(now.Copy().AddMonthsNoOverflow(1).DiffForHumans(now))
fmt.Println(now.Copy().SubMonthsNoOverflow(1).DiffForHumans(now))
fmt.Println(now.Copy().AddDays(1).DiffForHumans(now))
fmt.Println(now.Copy().SubDays(1).DiffForHumans(now))
Output: just now 2 days ago 2 days from now 1 year after 1 year before 1 month after 1 month before 1 day after 1 day before
func (*Carbon) DiffInDays ¶
DiffInDays gets the difference in days.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInDays(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInDays(carbon.Parse("2020-08-04 13:14:59")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInDays(carbon.Parse("2020-08-06 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInDays(carbon.Parse("2020-08-04 13:00:00")))
Output: 0 0 1 -1
func (*Carbon) DiffInDuration ¶
DiffInDuration gets the difference in duration.
Example ¶
defer carbon.ClearTestNow()
now := carbon.Parse("2020-08-05 13:14:15")
carbon.SetTestNow(now)
fmt.Println(now.Copy().DiffInDuration(now))
fmt.Println(now.Copy().AddYearsNoOverflow(1).DiffInDuration(now).String())
fmt.Println(now.Copy().SubYearsNoOverflow(1).DiffInDuration(now).String())
fmt.Println(now.Copy().AddMonthsNoOverflow(1).DiffInDuration(now).String())
fmt.Println(now.Copy().SubMonthsNoOverflow(1).DiffInDuration(now).String())
fmt.Println(now.Copy().AddDays(1).DiffInDuration(now).String())
fmt.Println(now.Copy().SubDays(1).DiffInDuration(now).String())
Output: 0s -8760h0m0s 8784h0m0s -744h0m0s 744h0m0s -24h0m0s 24h0m0s
func (*Carbon) DiffInHours ¶
DiffInHours gets the difference in hours.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInHours(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInHours(carbon.Parse("2020-08-05 14:13:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInHours(carbon.Parse("2020-08-05 12:14:00")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInHours(carbon.Parse("2020-08-05 14:14:15")))
Output: 0 0 -1 1
func (*Carbon) DiffInMinutes ¶
DiffInMinutes gets the difference in minutes.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInMinutes(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInMinutes(carbon.Parse("2020-08-05 13:15:10")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInMinutes(carbon.Parse("2020-08-05 13:13:00")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInMinutes(carbon.Parse("2020-08-05 13:15:15")))
Output: 0 0 -1 1
func (*Carbon) DiffInMonths ¶
DiffInMonths gets the difference in months.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInMonths(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInMonths(carbon.Parse("2020-07-28 13:14:00")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInMonths(carbon.Parse("2020-09-06 13:14:59")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInMonths(carbon.Parse("2018-08-28 13:14:59")))
Output: 0 0 1 -23
func (*Carbon) DiffInSeconds ¶
DiffInSeconds gets the difference in seconds.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInSeconds(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInSeconds(carbon.Parse("2020-08-05 13:14:15.999999")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInSeconds(carbon.Parse("2020-08-05 13:14:20")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInSeconds(carbon.Parse("2020-08-05 13:14:10")))
Output: 0 0 5 -5
func (*Carbon) DiffInString ¶
DiffInString gets the difference in string, i18n is supported.
Example ¶
defer carbon.ClearTestNow()
now := carbon.Parse("2020-08-05 13:14:15")
carbon.SetTestNow(now)
fmt.Println(now.Copy().DiffInString(now))
fmt.Println(now.Copy().AddYearsNoOverflow(1).DiffInString(now))
fmt.Println(now.Copy().SubYearsNoOverflow(1).DiffInString(now))
fmt.Println(now.Copy().AddMonthsNoOverflow(1).DiffInString(now))
fmt.Println(now.Copy().SubMonthsNoOverflow(1).DiffInString(now))
fmt.Println(now.Copy().AddWeeks(1).DiffInString(now))
fmt.Println(now.Copy().SubWeeks(1).DiffInString(now))
fmt.Println(now.Copy().AddDays(1).DiffInString(now))
fmt.Println(now.Copy().SubDays(1).DiffInString(now))
fmt.Println(now.Copy().AddHours(1).DiffInString(now))
fmt.Println(now.Copy().SubHours(1).DiffInString(now))
fmt.Println(now.Copy().AddMinutes(1).DiffInString(now))
fmt.Println(now.Copy().SubMinutes(1).DiffInString(now))
fmt.Println(now.Copy().AddSeconds(1).DiffInString(now))
fmt.Println(now.Copy().SubSeconds(1).DiffInString(now))
Output: just now -1 year 1 year -1 month 1 month -1 week 1 week -1 day 1 day -1 hour 1 hour -1 minute 1 minute -1 second 1 second
func (*Carbon) DiffInWeeks ¶
DiffInWeeks gets the difference in weeks.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInWeeks(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInWeeks(carbon.Parse("2020-07-28 13:14:00")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInWeeks(carbon.Parse("2020-08-12 13:14:15")))
Output: 0 -1 1
func (*Carbon) DiffInYears ¶
DiffInYears gets the difference in years.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInYears(carbon.Parse("2020-08-05 13:14:15")))
fmt.Println(carbon.Parse("2020-12-31 13:14:15").DiffInYears(carbon.Parse("2021-01-01 13:14:15")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInYears(carbon.Parse("2021-08-28 13:14:59")))
fmt.Println(carbon.Parse("2020-08-05 13:14:15").DiffInYears(carbon.Parse("2018-08-28 13:14:59")))
Output: 0 0 1 -1
func (*Carbon) EndOfCentury ¶
EndOfCentury returns a Carbon instance for end of the century.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfCentury().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfCentury().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfCentury().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfCentury().ToString())
Output: 0099-12-31 23:59:59.999999999 +0000 UTC 2099-12-31 23:59:59.999999999 +0000 UTC 2099-12-31 23:59:59.999999999 +0000 UTC 2099-12-31 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfDay ¶
EndOfDay returns a Carbon instance for end of the day.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfDay().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfDay().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfDay().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfDay().ToString())
Output: 0001-01-01 23:59:59.999999999 +0000 UTC 2020-01-01 23:59:59.999999999 +0000 UTC 2020-08-15 23:59:59.999999999 +0000 UTC 2020-12-31 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfDecade ¶
EndOfDecade returns a Carbon instance for end of the decade.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfDecade().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfDecade().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfDecade().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfDecade().ToString())
Output: 0009-12-31 23:59:59.999999999 +0000 UTC 2029-12-31 23:59:59.999999999 +0000 UTC 2029-12-31 23:59:59.999999999 +0000 UTC 2029-12-31 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfHour ¶
EndOfHour returns a Carbon instance for end of the hour.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfHour().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfHour().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfHour().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfHour().ToString())
Output: 0001-01-01 00:59:59.999999999 +0000 UTC 2020-01-01 00:59:59.999999999 +0000 UTC 2020-08-15 12:59:59.999999999 +0000 UTC 2020-12-31 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfMinute ¶
EndOfMinute returns a Carbon instance for end of the minute.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfMinute().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfMinute().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfMinute().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfMinute().ToString())
Output: 0001-01-01 00:00:59.999999999 +0000 UTC 2020-01-01 00:00:59.999999999 +0000 UTC 2020-08-15 12:30:59.999999999 +0000 UTC 2020-12-31 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfMonth ¶
EndOfMonth returns a Carbon instance for end of the month.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfMonth().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfMonth().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfMonth().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfMonth().ToString())
Output: 0001-01-31 23:59:59.999999999 +0000 UTC 2020-01-31 23:59:59.999999999 +0000 UTC 2020-08-31 23:59:59.999999999 +0000 UTC 2020-12-31 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfQuarter ¶
EndOfQuarter returns a Carbon instance for end of the quarter.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfQuarter().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfQuarter().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfQuarter().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfQuarter().ToString())
Output: 0001-03-31 23:59:59.999999999 +0000 UTC 2020-03-31 23:59:59.999999999 +0000 UTC 2020-09-30 23:59:59.999999999 +0000 UTC 2020-12-31 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfSeason ¶
EndOfSeason returns a Carbon instance for end of the season.
Example ¶
fmt.Println(carbon.Parse("2020-01-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-02-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-03-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-04-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-05-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-06-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-07-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-08-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-09-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-10-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-11-15").EndOfSeason().ToString())
fmt.Println(carbon.Parse("2020-12-15").EndOfSeason().ToString())
Output: 2020-02-29 23:59:59.999999999 +0000 UTC 2020-02-29 23:59:59.999999999 +0000 UTC 2020-05-31 23:59:59.999999999 +0000 UTC 2020-05-31 23:59:59.999999999 +0000 UTC 2020-05-31 23:59:59.999999999 +0000 UTC 2020-08-31 23:59:59.999999999 +0000 UTC 2020-08-31 23:59:59.999999999 +0000 UTC 2020-08-31 23:59:59.999999999 +0000 UTC 2020-11-30 23:59:59.999999999 +0000 UTC 2020-11-30 23:59:59.999999999 +0000 UTC 2020-11-30 23:59:59.999999999 +0000 UTC 2021-02-28 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfSecond ¶
EndOfSecond returns a Carbon instance for end of the second.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfSecond().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfSecond().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfSecond().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfSecond().ToString())
Output: 0001-01-01 00:00:00.999999999 +0000 UTC 2020-01-01 00:00:00.999999999 +0000 UTC 2020-08-15 12:30:30.999999999 +0000 UTC 2020-12-31 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfWeek ¶
EndOfWeek returns a Carbon instance for end of the week.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfWeek().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfWeek().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfWeek().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfWeek().ToString())
Output: 0001-01-07 23:59:59.999999999 +0000 UTC 2020-01-05 23:59:59.999999999 +0000 UTC 2020-08-16 23:59:59.999999999 +0000 UTC 2021-01-03 23:59:59.999999999 +0000 UTC
func (*Carbon) EndOfYear ¶
EndOfYear returns a Carbon instance for end of the year.
Example ¶
fmt.Println(carbon.NewCarbon().EndOfYear().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").EndOfYear().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").EndOfYear().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").EndOfYear().ToString())
Output: 0001-12-31 23:59:59.999999999 +0000 UTC 2020-12-31 23:59:59.999999999 +0000 UTC 2020-12-31 23:59:59.999999999 +0000 UTC 2020-12-31 23:59:59.999999999 +0000 UTC
func (*Carbon) Eq ¶
Eq reports whether equal.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Eq(carbon.Parse("2020-08-05 21:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Eq(carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Eq(carbon.Parse("2020-08-05 23:00:00")))
Output: false true false
func (*Carbon) Farthest ¶
Farthest returns the farthest Carbon instance from some given Carbon instances.
Example ¶
c1 := carbon.Parse("2020-08-01")
c2 := carbon.Parse("2020-08-05")
c3 := carbon.Parse("2020-08-06")
fmt.Println(c1.Farthest(c2, c3).ToString())
fmt.Println(c2.Farthest(c1, c3).ToString())
fmt.Println(c3.Farthest(c1, c2).ToString())
Output: 2020-08-06 00:00:00 +0000 UTC 2020-08-01 00:00:00 +0000 UTC 2020-08-01 00:00:00 +0000 UTC
func (*Carbon) Format ¶
Format outputs a string by format.
Example ¶
fmt.Printf("Y-m-d H:i:s format: %s\n", carbon.Parse("2020-08-05 13:14:15").Format(carbon.DateTimeFormat))
fmt.Printf("Y-m-d format: %s\n", carbon.Parse("2020-08-05T13:14:15.999999999+00:00").Format(carbon.DateFormat))
fmt.Printf("Y-m-d H:i:s with PRC timezone format: %s\n", carbon.Parse("2020-08-05", carbon.PRC).Format(carbon.DateTimeFormat, carbon.PRC))
fmt.Printf("Y年m月d日 format: %s\n", carbon.Parse("2020-08-05 13:14:15").Format("Y年m月d日"))
fmt.Printf("D format: %s\n", carbon.Parse("2020-08-05 01:14:15").Format("D"))
fmt.Printf("l format: %s\n", carbon.Parse("2020-08-05 01:14:15").Format("l"))
fmt.Printf("F format: %s\n", carbon.Parse("2020-08-05 01:14:15").Format("F"))
fmt.Printf("M format: %s\n", carbon.Parse("2020-08-05 01:14:15").Format("M"))
fmt.Printf("j format: %s\n", carbon.Parse("2020-08-05 01:14:15").Format("j"))
fmt.Printf("W format: %s\n", carbon.Parse("2020-08-05 01:14:15").Format("W"))
fmt.Printf("F format: %s\n", carbon.Parse("2020-08-05 01:14:15").Format("F"))
fmt.Printf("N format: %s\n", carbon.Parse("2020-08-05 01:14:15").Format("N"))
fmt.Printf("L format: %s\n", carbon.Parse("2020-08-05 01:14:15").Format("L"))
fmt.Printf("L format: %s\n", carbon.Parse("2021-08-05 13:14:15").Format("L"))
fmt.Printf("G format: %s\n", carbon.Parse("2020-08-05 13:14:15").Format("G"))
fmt.Printf("S format: %s\n", carbon.Parse("2020-08-05 13:14:15").Format("S"))
fmt.Printf("U format: %s\n", carbon.Parse("2020-08-05 13:14:15").Format("U"))
fmt.Printf("V format: %s\n", carbon.Parse("2020-08-05 13:14:15").Format("V"))
fmt.Printf("X format: %s\n", carbon.Parse("2020-08-05 13:14:15").Format("X"))
fmt.Printf("u format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999").Format("u"))
fmt.Printf("v format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999").Format("v"))
fmt.Printf("x format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999").Format("x"))
fmt.Printf("w format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999").Format("w"))
fmt.Printf("t format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999").Format("t"))
fmt.Printf("z format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999", carbon.PRC).Format("z"))
fmt.Printf("o format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999", carbon.PRC).Format("o"))
fmt.Printf("q format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999").Format("q"))
fmt.Printf("c format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999").Format("c"))
fmt.Printf("R format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999", carbon.UTC).Format("R"))
fmt.Printf("R format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999", carbon.PRC).Format("R"))
fmt.Printf("Q format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999", carbon.UTC).Format("Q"))
fmt.Printf("Q format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999", carbon.PRC).Format("Q"))
fmt.Printf("Z format: %s\n", carbon.Parse("2020-08-05 13:14:15.999999999", carbon.PRC).Format("Z"))
fmt.Printf("jK format: %s\n", carbon.Parse("2020-08-05 13:14:15").Format("jK"))
fmt.Printf("jK format: %s\n", carbon.Parse("2020-08-22 13:14:15").Format("jK"))
fmt.Printf("jK format: %s\n", carbon.Parse("2020-08-23 13:14:15").Format("jK"))
fmt.Printf("jK format: %s\n", carbon.Parse("2020-08-31 13:14:15").Format("jK"))
fmt.Printf("timestamp format: %s\n", carbon.Parse("2020-08-05T13:14:15.999999999+00:00").Format(carbon.TimestampFormat))
fmt.Printf("TimestampMilli format: %s\n", carbon.Parse("2020-08-05T13:14:15.999999999+00:00").Format(carbon.TimestampMilliFormat))
fmt.Printf("timestampMicro format: %s\n", carbon.Parse("2020-08-05T13:14:15.999999999+00:00").Format(carbon.TimestampMicroFormat))
fmt.Printf("timestampNano format: %s\n", carbon.Parse("2020-08-05T13:14:15.999999999+00:00").Format(carbon.TimestampNanoFormat))
fmt.Printf("I\\t \\i\\s Y-m-d H:i:s format: %s\n", carbon.Parse("2020-08-31 13:14:15").Format("I\\t \\i\\s Y-m-d H:i:s"))
fmt.Printf("上次打卡时间:Y-m-d H:i:s,请每日按时打卡 format: %s\n", carbon.Parse("2020-08-31 13:14:15").Format("上次打卡时间:Y-m-d H:i:s,请每日按时打卡"))
Output: Y-m-d H:i:s format: 2020-08-05 13:14:15 Y-m-d format: 2020-08-05 Y-m-d H:i:s with PRC timezone format: 2020-08-05 00:00:00 Y年m月d日 format: 2020年08月05日 D format: Wed l format: Wednesday F format: August M format: Aug j format: 5 W format: 32 F format: August N format: 3 L format: 1 L format: 0 G format: 13 S format: 1596633255 U format: 1596633255000 V format: 1596633255000000 X format: 1596633255000000000 u format: 999 v format: 999999 x format: 999999999 w format: 2 t format: 31 z format: PRC o format: 28800 q format: 3 c format: 21 R format: Z R format: +08:00 Q format: Z Q format: +0800 Z format: CST jK format: 5th jK format: 22nd jK format: 23rd jK format: 31st timestamp format: 1596633255 TimestampMilli format: 1596633255999 timestampMicro format: 1596633255999999 timestampNano format: 1596633255999999999 I\t \i\s Y-m-d H:i:s format: It is 2020-08-31 13:14:15 上次打卡时间:Y-m-d H:i:s,请每日按时打卡 format: 上次打卡时间:2020-08-31 13:14:15,请每日按时打卡
func (*Carbon) GoString ¶
GoString implements "fmt.GoStringer" interface for Carbon struct.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").GoString())
fmt.Println(carbon.Parse("2020-08-05 13:14:15", carbon.PRC).GoString())
Output: time.Date(2020, time.August, 5, 13, 14, 15, 0, time.UTC) time.Date(2020, time.August, 5, 13, 14, 15, 0, time.Location("PRC"))
func (*Carbon) Gt ¶
Gt reports whether greater than.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Gt(carbon.Parse("2020-08-05 21:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Gt(carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Gt(carbon.Parse("2020-08-05 23:00:00")))
Output: true false false
func (*Carbon) Gte ¶
Gte reports whether greater than or equal.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Gte(carbon.Parse("2020-08-05 21:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Gte(carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Gte(carbon.Parse("2020-08-05 23:00:00")))
Output: true true false
func (*Carbon) HasError ¶ added in v2.6.0
HasError reports whether it has error.
Example ¶
fmt.Println(carbon.NewCarbon().HasError())
fmt.Println(carbon.Parse("").HasError())
fmt.Println(carbon.Now().HasError())
fmt.Println(carbon.Parse("xxx").HasError())
Output: false false false true
func (*Carbon) Hebrew ¶ added in v2.6.11
Hebrew converts Carbon instance to Hebrew instance.
Example ¶
fmt.Println(carbon.Parse("2024-01-01").Hebrew().String())
fmt.Println(carbon.Parse("2024-08-05").Hebrew().String())
fmt.Println(carbon.Parse("2025-10-03").Hebrew().String())
Output: 5784-10-20 5784-05-01 5786-07-10
func (*Carbon) Hour ¶
Hour gets current hour like 13.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").Hour())
Output: 13
func (*Carbon) IsAM ¶
IsAM reports whether it is before noon.
Example ¶
fmt.Println(carbon.Parse("2020-08-08 00:00:00").IsAM())
fmt.Println(carbon.Parse("2020-08-08 12:00:00").IsAM())
fmt.Println(carbon.Parse("2020-08-08 23:59:59").IsAM())
Output: true false false
func (*Carbon) IsApril ¶
IsApril reports whether it is April.
Example ¶
fmt.Println(carbon.Parse("2020-04-01").IsApril())
fmt.Println(carbon.Parse("2020-05-01").IsApril())
Output: true false
func (*Carbon) IsAquarius ¶
IsAquarius reports whether is Aquarius.
Example ¶
fmt.Println(carbon.Parse("2020-01-20").IsAquarius())
fmt.Println(carbon.Parse("2020-08-05").IsAquarius())
Output: true false
func (*Carbon) IsAries ¶
IsAries reports whether is Aries.
Example ¶
fmt.Println(carbon.Parse("2020-04-20").IsTaurus())
fmt.Println(carbon.Parse("2020-08-05").IsTaurus())
Output: true false
func (*Carbon) IsAugust ¶
IsAugust reports whether it is August.
Example ¶
fmt.Println(carbon.Parse("2020-08-01").IsAugust())
fmt.Println(carbon.Parse("2020-09-01").IsAugust())
Output: true false
func (*Carbon) IsAutumn ¶
IsAutumn reports whether is autumn.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").IsAutumn())
fmt.Println(carbon.Parse("2020-09-01").IsAutumn())
Output: false true
func (*Carbon) IsCancer ¶
IsCancer reports whether is Cancer.
Example ¶
fmt.Println(carbon.Parse("2020-06-22").IsCancer())
fmt.Println(carbon.Parse("2020-08-05").IsCancer())
Output: true false
func (*Carbon) IsCapricorn ¶
IsCapricorn reports whether is Capricorn.
Example ¶
fmt.Println(carbon.Parse("2020-12-22").IsCapricorn())
fmt.Println(carbon.Parse("2020-08-05").IsCapricorn())
Output: true false
func (*Carbon) IsDST ¶
IsDST reports whether it is a daylight saving time.
Example ¶
tzWithDST, tzWithoutDST := "Australia/Sydney", "Australia/Brisbane"
fmt.Println(carbon.Parse("2009-01-01", tzWithDST).IsDST())
fmt.Println(carbon.Parse("2009-01-01", tzWithoutDST).IsDST())
Output: true false
func (*Carbon) IsDecember ¶
IsDecember reports whether it is December.
Example ¶
fmt.Println(carbon.Parse("2020-12-01").IsDecember())
fmt.Println(carbon.Parse("2020-01-01").IsDecember())
Output: true false
func (*Carbon) IsEmpty ¶ added in v2.6.5
IsEmpty reports whether it is empty value.
Example ¶
var c *carbon.Carbon
c = nil
fmt.Println(c.IsEmpty())
fmt.Println(carbon.NewCarbon().IsEmpty())
fmt.Println(carbon.Parse("xxx").IsEmpty())
fmt.Println(carbon.Now().IsEmpty())
fmt.Println(carbon.Parse("").IsEmpty())
Output: false false false false true
func (*Carbon) IsEpoch ¶ added in v2.6.3
IsEpoch reports whether it is a unix epoch time(1970-01-01 00:00:00 +0000 UTC).
Example ¶
fmt.Println(carbon.NewCarbon().IsEpoch())
fmt.Println(carbon.EpochValue().IsEpoch())
fmt.Println(carbon.CreateFromDateTimeNano(1970, 1, 1, 0, 0, 0, 0, carbon.UTC).IsEpoch())
fmt.Println(carbon.CreateFromTimestamp(0).IsEpoch())
fmt.Println(carbon.Parse("").IsEpoch())
fmt.Println(carbon.Parse("xxx").IsEpoch())
fmt.Println(carbon.Now().IsEpoch())
Output: false true true true false false false
func (*Carbon) IsFebruary ¶
IsFebruary reports whether it is February.
Example ¶
fmt.Println(carbon.Parse("2020-02-01").IsFebruary())
fmt.Println(carbon.Parse("2020-03-01").IsFebruary())
Output: true false
func (*Carbon) IsFriday ¶
IsFriday reports whether it is Friday.
Example ¶
fmt.Println(carbon.Parse("2025-03-07").IsFriday())
fmt.Println(carbon.Parse("2025-03-08").IsFriday())
Output: true false
func (*Carbon) IsFuture ¶
IsFuture reports whether it is future time.
Example ¶
fmt.Println(carbon.Yesterday().IsFuture())
fmt.Println(carbon.Now().IsFuture())
fmt.Println(carbon.Tomorrow().IsFuture())
fmt.Println(carbon.Parse("2025-03-01").IsFuture())
Output: false false true false
func (*Carbon) IsGemini ¶
IsGemini reports whether is Gemini.
Example ¶
fmt.Println(carbon.Parse("2020-06-21").IsGemini())
fmt.Println(carbon.Parse("2020-08-05").IsGemini())
Output: true false
func (*Carbon) IsInvalid ¶
IsInvalid reports whether it is an invalid time.
Example ¶
fmt.Println(carbon.NewCarbon().IsInvalid())
fmt.Println(carbon.Parse("").IsInvalid())
fmt.Println(carbon.Parse("xxx").IsInvalid())
fmt.Println(carbon.Now().IsInvalid())
Output: false true true false
func (*Carbon) IsJanuary ¶
IsJanuary reports whether it is January.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").IsJanuary())
fmt.Println(carbon.Parse("2020-02-01").IsJanuary())
Output: true false
func (*Carbon) IsJuly ¶
IsJuly reports whether it is July.
Example ¶
fmt.Println(carbon.Parse("2020-07-01").IsJuly())
fmt.Println(carbon.Parse("2020-08-01").IsJuly())
Output: true false
func (*Carbon) IsJune ¶
IsJune reports whether it is June.
Example ¶
fmt.Println(carbon.Parse("2020-06-01").IsJune())
fmt.Println(carbon.Parse("2020-07-01").IsJune())
Output: true false
func (*Carbon) IsLeapYear ¶
IsLeapYear reports whether it is a leap year.
Example ¶
fmt.Println(carbon.Parse("2015-01-01").IsLeapYear())
fmt.Println(carbon.Parse("2016-01-01").IsLeapYear())
Output: false true
func (*Carbon) IsLeo ¶
IsLeo reports whether is Leo.
Example ¶
fmt.Println(carbon.Parse("2020-07-23").IsLeo())
fmt.Println(carbon.Parse("2020-09-01").IsLeo())
Output: true false
func (*Carbon) IsLibra ¶
IsLibra reports whether is Libra.
Example ¶
fmt.Println(carbon.Parse("2020-09-23").IsLibra())
fmt.Println(carbon.Parse("2020-08-05").IsLibra())
Output: true false
func (*Carbon) IsLongYear ¶
IsLongYear reports whether it is a long year,
refer to https://en.wikipedia.org/wiki/ISO_8601#Week_dates.
Example ¶
fmt.Println(carbon.Parse("2015-01-01").IsLongYear())
fmt.Println(carbon.Parse("2016-01-01").IsLongYear())
Output: true false
func (*Carbon) IsMarch ¶
IsMarch reports whether it is March.
Example ¶
fmt.Println(carbon.Parse("2020-03-01").IsMarch())
fmt.Println(carbon.Parse("2020-04-01").IsMarch())
Output: true false
func (*Carbon) IsMay ¶
IsMay reports whether it is May.
Example ¶
fmt.Println(carbon.Parse("2020-05-01").IsMay())
fmt.Println(carbon.Parse("2020-06-01").IsMay())
Output: true false
func (*Carbon) IsMonday ¶
IsMonday reports whether it is Monday.
Example ¶
fmt.Println(carbon.Parse("2025-03-03").IsMonday())
fmt.Println(carbon.Parse("2025-03-04").IsMonday())
Output: true false
func (*Carbon) IsNil ¶ added in v2.6.0
IsNil reports whether it is nil pointer.
Example ¶
fmt.Println(carbon.NewCarbon().IsNil())
fmt.Println(carbon.Parse("xxx").IsNil())
fmt.Println(carbon.Now().IsNil())
fmt.Println(carbon.Parse("").IsNil())
c := carbon.NewCarbon()
c = nil
fmt.Println(c.IsNil())
Output: false false false false true
func (*Carbon) IsNovember ¶
IsNovember reports whether it is November.
Example ¶
fmt.Println(carbon.Parse("2020-11-01").IsNovember())
fmt.Println(carbon.Parse("2020-12-01").IsNovember())
Output: true false
func (*Carbon) IsNow ¶
IsNow reports whether it is now time.
Example ¶
fmt.Println(carbon.Yesterday().IsNow())
fmt.Println(carbon.Now().IsNow())
fmt.Println(carbon.Tomorrow().IsNow())
fmt.Println(carbon.Parse("2025-03-01").IsNow())
Output: false true false false
func (*Carbon) IsOctober ¶
IsOctober reports whether it is October.
Example ¶
fmt.Println(carbon.Parse("2020-10-01").IsOctober())
fmt.Println(carbon.Parse("2020-11-01").IsOctober())
Output: true false
func (*Carbon) IsPM ¶
IsPM reports whether it is after noon.
Example ¶
fmt.Println(carbon.Parse("2020-08-08 00:00:00").IsPM())
fmt.Println(carbon.Parse("2020-08-08 12:00:00").IsPM())
fmt.Println(carbon.Parse("2020-08-08 23:59:59").IsPM())
Output: false true true
func (*Carbon) IsPast ¶
IsPast reports whether it is past time.
Example ¶
fmt.Println(carbon.Yesterday().IsPast())
fmt.Println(carbon.Now().IsPast())
fmt.Println(carbon.Tomorrow().IsPast())
fmt.Println(carbon.Parse("2025-03-01").IsPast())
Output: true false false true
func (*Carbon) IsPisces ¶
IsPisces reports whether is Pisces.
Example ¶
fmt.Println(carbon.Parse("2020-02-19").IsPisces())
fmt.Println(carbon.Parse("2020-08-05").IsPisces())
Output: true false
func (*Carbon) IsSagittarius ¶
IsSagittarius reports whether is Sagittarius.
Example ¶
fmt.Println(carbon.Parse("2020-11-23").IsSagittarius())
fmt.Println(carbon.Parse("2020-08-05").IsSagittarius())
Output: true false
func (*Carbon) IsSameCentury ¶
IsSameCentury reports whether it is same century.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").IsSameCentury(carbon.Parse("2010-01-01")))
fmt.Println(carbon.Parse("2020-08-05").IsSameCentury(carbon.Parse("2030-12-31")))
fmt.Println(carbon.Parse("2020-08-05").IsSameCentury(carbon.Parse("2100-08-05")))
Output: true true false
func (*Carbon) IsSameDay ¶
IsSameDay reports whether it is same day.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 00:00:00").IsSameDay(carbon.Parse("2020-08-05 23:59:59")))
fmt.Println(carbon.Parse("2020-08-05 00:00:00").IsSameDay(carbon.Parse("2021-08-05 00:00:00")))
fmt.Println(carbon.Parse("2020-08-05 00:00:00").IsSameDay(carbon.Parse("2020-09-05 00:00:00")))
Output: true false false
func (*Carbon) IsSameDecade ¶
IsSameDecade reports whether it is same decade.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").IsSameDecade(carbon.Parse("2020-01-01")))
fmt.Println(carbon.Parse("2020-08-05").IsSameDecade(carbon.Parse("2020-12-31")))
fmt.Println(carbon.Parse("2020-08-05").IsSameDecade(carbon.Parse("2010-08-05")))
Output: true true false
func (*Carbon) IsSameHour ¶
IsSameHour reports whether it is same hour.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameHour(carbon.Parse("2020-08-05 22:59:59")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameHour(carbon.Parse("2021-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameHour(carbon.Parse("2020-09-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameHour(carbon.Parse("2020-08-06 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameHour(carbon.Parse("2020-08-05 23:00:00")))
Output: true false false false false
func (*Carbon) IsSameMinute ¶
IsSameMinute reports whether it is same minute.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameMinute(carbon.Parse("2020-08-05 22:00:59")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameMinute(carbon.Parse("2021-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameMinute(carbon.Parse("2020-08-06 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameMinute(carbon.Parse("2020-08-05 23:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameMinute(carbon.Parse("2020-08-05 22:01:00")))
Output: true false false false false
func (*Carbon) IsSameMonth ¶
IsSameMonth reports whether it is same month.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").IsSameMonth(carbon.Parse("2020-08-01")))
fmt.Println(carbon.Parse("2020-08-05").IsSameMonth(carbon.Parse("2010-08-05")))
fmt.Println(carbon.Parse("2020-08-05").IsSameMonth(carbon.Parse("2020-09-05")))
Output: true false false
func (*Carbon) IsSameQuarter ¶
IsSameQuarter reports whether it is same quarter.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").IsSameQuarter(carbon.Parse("2020-08-06")))
fmt.Println(carbon.Parse("2020-08-05").IsSameQuarter(carbon.Parse("2010-08-05")))
fmt.Println(carbon.Parse("2020-08-05").IsSameQuarter(carbon.Parse("2010-01-05")))
Output: true false false
func (*Carbon) IsSameSecond ¶
IsSameSecond reports whether it is same second.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameSecond(carbon.Parse("2020-08-05 22:00:00.999999")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").IsSameSecond(carbon.Parse("2021-08-05 22:00:00")))
Output: true false
func (*Carbon) IsSameYear ¶
IsSameYear reports whether it is same year.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").IsSameYear(carbon.Parse("2010-08-05")))
fmt.Println(carbon.Parse("2020-08-05").IsSameYear(carbon.Parse("2020-01-01")))
fmt.Println(carbon.Parse("2020-08-05").IsSameYear(carbon.Parse("2020-12-31")))
Output: false true true
func (*Carbon) IsSaturday ¶
IsSaturday reports whether it is Saturday.
Example ¶
fmt.Println(carbon.Parse("2025-03-08").IsSaturday())
fmt.Println(carbon.Parse("2025-03-09").IsSaturday())
Output: true false
func (*Carbon) IsScorpio ¶
IsScorpio reports whether is Scorpio.
Example ¶
fmt.Println(carbon.Parse("2020-10-24").IsScorpio())
fmt.Println(carbon.Parse("2020-08-05").IsScorpio())
Output: true false
func (*Carbon) IsSeptember ¶
IsSeptember reports whether it is September.
Example ¶
fmt.Println(carbon.Parse("2020-09-01").IsSeptember())
fmt.Println(carbon.Parse("2020-10-01").IsSeptember())
Output: true false
func (*Carbon) IsSpring ¶
IsSpring reports whether is spring.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").IsSpring())
fmt.Println(carbon.Parse("2020-03-01").IsSpring())
Output: false true
func (*Carbon) IsSummer ¶
IsSummer reports whether is summer.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").IsSummer())
fmt.Println(carbon.Parse("2020-06-01").IsSummer())
Output: false true
func (*Carbon) IsSunday ¶
IsSunday reports whether it is Sunday.
Example ¶
fmt.Println(carbon.Parse("2025-03-09").IsSunday())
fmt.Println(carbon.Parse("2025-03-10").IsSunday())
Output: true false
func (*Carbon) IsThursday ¶
IsThursday reports whether it is Thursday.
Example ¶
fmt.Println(carbon.Parse("2025-03-06").IsThursday())
fmt.Println(carbon.Parse("2025-03-07").IsThursday())
Output: true false
func (*Carbon) IsToday ¶
IsToday reports whether it is today.
Example ¶
fmt.Println(carbon.Yesterday().IsToday())
fmt.Println(carbon.Now().IsToday())
fmt.Println(carbon.Tomorrow().IsToday())
fmt.Println(carbon.Parse("2025-03-01").IsToday())
Output: false true false false
func (*Carbon) IsTomorrow ¶
IsTomorrow reports whether it is tomorrow.
Example ¶
fmt.Println(carbon.Yesterday().IsTomorrow())
fmt.Println(carbon.Now().IsTomorrow())
fmt.Println(carbon.Tomorrow().IsTomorrow())
fmt.Println(carbon.Parse("2025-03-01").IsTomorrow())
Output: false false true false
func (*Carbon) IsTuesday ¶
IsTuesday reports whether it is Tuesday.
Example ¶
fmt.Println(carbon.Parse("2025-03-04").IsTuesday())
fmt.Println(carbon.Parse("2025-03-05").IsTuesday())
Output: true false
func (*Carbon) IsValid ¶
IsValid reports whether it is a valid time.
Example ¶
fmt.Println(carbon.NewCarbon().IsValid())
fmt.Println(carbon.Now().IsValid())
fmt.Println(carbon.Parse("").IsValid())
fmt.Println(carbon.Parse("xxx").IsValid())
Output: true true false false
func (*Carbon) IsVirgo ¶
IsVirgo reports whether is Virgo.
Example ¶
fmt.Println(carbon.Parse("2020-08-23").IsVirgo())
fmt.Println(carbon.Parse("2020-08-05").IsVirgo())
Output: true false
func (*Carbon) IsWednesday ¶
IsWednesday reports whether it is Wednesday.
Example ¶
fmt.Println(carbon.Parse("2025-03-05").IsWednesday())
fmt.Println(carbon.Parse("2025-03-06").IsWednesday())
Output: true false
func (*Carbon) IsWeekday ¶
IsWeekday reports whether it is weekday.
Example ¶
fmt.Println(carbon.Parse("2025-03-01").IsWeekday())
fmt.Println(carbon.Parse("2025-03-02").IsWeekday())
fmt.Println(carbon.Parse("2025-03-03").IsWeekday())
Output: false false true
func (*Carbon) IsWeekend ¶
IsWeekend reports whether it is weekend.
Example ¶
fmt.Println(carbon.Parse("2025-03-01").IsWeekend())
fmt.Println(carbon.Parse("2025-03-02").IsWeekend())
fmt.Println(carbon.Parse("2025-03-03").IsWeekend())
Output: true true false
func (*Carbon) IsWinter ¶
IsWinter reports whether is winter.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").IsWinter())
fmt.Println(carbon.Parse("2020-05-01").IsWinter())
Output: true false
func (*Carbon) IsYesterday ¶
IsYesterday reports whether it is yesterday.
Example ¶
fmt.Println(carbon.Yesterday().IsYesterday())
fmt.Println(carbon.Now().IsYesterday())
fmt.Println(carbon.Tomorrow().IsYesterday())
fmt.Println(carbon.Parse("2025-03-01").IsYesterday())
Output: true false false false
func (*Carbon) IsZero ¶
IsZero reports whether it is a zero time(0001-01-01 00:00:00 +0000 UTC).
Example ¶
fmt.Println(carbon.NewCarbon().IsZero())
fmt.Println(carbon.ZeroValue().IsZero())
fmt.Println(carbon.CreateFromDateTimeNano(1, 1, 1, 0, 0, 0, 0, carbon.UTC).IsZero())
fmt.Println(carbon.CreateFromTimestamp(0).IsZero())
fmt.Println(carbon.Parse("").IsZero())
fmt.Println(carbon.Parse("xxx").IsZero())
fmt.Println(carbon.Now().IsZero())
Output: true true true false false false false
func (*Carbon) Julian ¶
Julian converts Carbon instance to Julian instance.
Example ¶
fmt.Println("JD(default precision 6):", carbon.Parse("2024-01-23 13:14:15").Julian().JD())
fmt.Println("MJD(default precision 6):", carbon.Parse("2024-01-23 13:14:15").Julian().MJD())
fmt.Println("JD(specify precision 4):", carbon.Parse("2024-01-23 13:14:15").Julian().JD(4))
fmt.Println("MJD(specify precision 4):", carbon.Parse("2024-01-23 13:14:15").Julian().MJD(4))
Output: JD(default precision 6): 2.460333051563e+06 MJD(default precision 6): 60332.551563 JD(specify precision 4): 2.4603330516e+06 MJD(specify precision 4): 60332.5516
func (*Carbon) Layout ¶
Layout outputs a string by layout.
Example ¶
c := carbon.Parse("2020-08-05T13:14:15.999999999+00:00")
fmt.Printf("date layout: %s\n", c.Layout(carbon.DateLayout))
fmt.Printf("time layout: %s\n", c.Layout(carbon.TimeLayout))
fmt.Printf("datetime layout: %s\n", c.Layout(carbon.DateTimeLayout))
fmt.Printf("timestamp layout: %s\n", c.Layout(carbon.TimestampLayout))
fmt.Printf("TimestampMilli layout: %s\n", c.Layout(carbon.TimestampMilliLayout))
fmt.Printf("timestampMicro layout: %s\n", c.Layout(carbon.TimestampMicroLayout))
fmt.Printf("timestampNano layout: %s\n", c.Layout(carbon.TimestampNanoLayout))
Output: date layout: 2020-08-05 time layout: 13:14:15 datetime layout: 2020-08-05 13:14:15 timestamp layout: 1596633255 TimestampMilli layout: 1596633255999 timestampMicro layout: 1596633255999999 timestampNano layout: 1596633255999999999
func (*Carbon) Locale ¶
Locale gets locale name like "zh-CN".
Example ¶
fmt.Println(carbon.Now().SetLocale("en").Locale())
fmt.Println(carbon.Now().SetLocale("zh-CN").Locale())
Output: en zh-CN
func (*Carbon) Lt ¶
Lt reports whether less than.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Lt(carbon.Parse("2020-08-05 21:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Lt(carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Lt(carbon.Parse("2020-08-05 23:00:00")))
Output: false false true
func (*Carbon) Lte ¶
Lte reports whether less than or equal.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Lte(carbon.Parse("2020-08-05 21:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Lte(carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Lte(carbon.Parse("2020-08-05 23:00:00")))
Output: false true true
func (*Carbon) Lunar ¶
Lunar converts Carbon instance to Lunar instance.
Example ¶
fmt.Println(carbon.Parse("2023-03-02", carbon.PRC).Lunar().String())
fmt.Println(carbon.Parse("2023-04-01", carbon.PRC).Lunar().String())
Output: 2023-02-11 2023-02-11
func (Carbon) MarshalJSON ¶
MarshalJSON implements "json.Marshaler" interface for Carbon struct.
Example ¶
type User struct {
Carbon1 carbon.Carbon `json:"carbon1"`
Carbon2 *carbon.Carbon `json:"carbon2"`
}
user := User{
Carbon1: *carbon.Parse("2020-08-05 13:14:15.999999999"),
Carbon2: carbon.Parse("2020-08-05 13:14:15.999999999"),
}
data, _ := json.Marshal(&user)
fmt.Printf("%s", data)
Output: {"carbon1":"2020-08-05 13:14:15","carbon2":"2020-08-05 13:14:15"}
func (*Carbon) Microsecond ¶
Microsecond gets current microsecond like 999999.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").Microsecond())
Output: 999999
func (*Carbon) Millisecond ¶
Millisecond gets current millisecond like 999.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").Millisecond())
Output: 999
func (*Carbon) Minute ¶
Minute gets current minute like 14.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").Minute())
Output: 14
func (*Carbon) Month ¶
Month gets current month like 8.
Example ¶
fmt.Println(carbon.Parse("2020-01-05").Month())
fmt.Println(carbon.Parse("2020-04-05").Month())
fmt.Println(carbon.Parse("2020-08-05").Month())
fmt.Println(carbon.Parse("2020-11-05").Month())
Output: 1 4 8 11
func (*Carbon) MonthOfYear ¶
MonthOfYear gets month of year like 12.
Example ¶
fmt.Println(carbon.Parse("2020-01-05").MonthOfYear())
fmt.Println(carbon.Parse("2020-02-05").MonthOfYear())
fmt.Println(carbon.Parse("2020-03-05").MonthOfYear())
fmt.Println(carbon.Parse("2020-04-05").MonthOfYear())
Output: 1 2 3 4
func (*Carbon) Nanosecond ¶
Nanosecond gets current nanosecond like 999999999.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").Nanosecond())
Output: 999999999
func (*Carbon) Ne ¶
Ne reports whether not equal.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Ne(carbon.Parse("2020-08-05 21:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Ne(carbon.Parse("2020-08-05 22:00:00")))
fmt.Println(carbon.Parse("2020-08-05 22:00:00").Ne(carbon.Parse("2020-08-05 23:00:00")))
Output: true false true
func (*Carbon) Persian ¶
Persian converts Carbon instance to Persian instance.
Example ¶
fmt.Println(carbon.Parse("1800-01-01 00:00:00").Persian().String())
fmt.Println(carbon.Parse("2020-08-05 13:14:15").Persian().String())
fmt.Println(carbon.Parse("2024-01-01 00:00:00").Persian().String())
Output: 1178-10-11 1399-05-15 1402-10-11
func (*Carbon) Quarter ¶
Quarter gets current quarter like 3.
Example ¶
fmt.Println(carbon.Parse("2020-01-05").Quarter())
fmt.Println(carbon.Parse("2020-04-05").Quarter())
fmt.Println(carbon.Parse("2020-08-05").Quarter())
fmt.Println(carbon.Parse("2020-11-05").Quarter())
Output: 1 2 3 4
func (*Carbon) Season ¶
Season gets season name according to the meteorological division method like "Spring", i18n is supported.
Example ¶
fmt.Println(carbon.Parse("2020-01-05").Season())
fmt.Println(carbon.Parse("2020-02-05").Season())
fmt.Println(carbon.Parse("2020-03-05").Season())
fmt.Println(carbon.Parse("2020-04-05").Season())
fmt.Println(carbon.Parse("2020-05-05").Season())
fmt.Println(carbon.Parse("2020-06-05").Season())
fmt.Println(carbon.Parse("2020-07-05").Season())
fmt.Println(carbon.Parse("2020-08-05").Season())
fmt.Println(carbon.Parse("2020-09-05").Season())
fmt.Println(carbon.Parse("2020-10-05").Season())
fmt.Println(carbon.Parse("2020-11-05").Season())
fmt.Println(carbon.Parse("2020-12-05").Season())
Output: Winter Winter Spring Spring Spring Summer Summer Summer Autumn Autumn Autumn Winter
func (*Carbon) Second ¶
Second gets current second like 9.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").Second())
Output: 15
func (*Carbon) SetDate ¶
SetDate sets year, month and day.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetDate(2020, 8, 5).ToString())
Output: 2020-08-05 00:00:00 +0000 UTC
func (*Carbon) SetDateMicro ¶
SetDateMicro sets year, month, day and microsecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetDateMicro(2020, 8, 5, 999999).ToString())
Output: 2020-08-05 00:00:00.999999 +0000 UTC
func (*Carbon) SetDateMilli ¶
SetDateMilli sets year, month, day and millisecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetDateMilli(2020, 8, 5, 999).ToString())
Output: 2020-08-05 00:00:00.999 +0000 UTC
func (*Carbon) SetDateNano ¶
SetDateNano sets year, month, day and nanosecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetDateNano(2020, 8, 5, 999999999).ToString())
Output: 2020-08-05 00:00:00.999999999 +0000 UTC
func (*Carbon) SetDateTime ¶
SetDateTime sets year, month, day, hour, minute and second.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetDateTime(2020, 8, 5, 13, 14, 15).ToString())
Output: 2020-08-05 13:14:15 +0000 UTC
func (*Carbon) SetDateTimeMicro ¶
SetDateTimeMicro sets year, month, day, hour, minute, second and microsecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetDateTimeMicro(2020, 8, 5, 13, 14, 15, 999999).ToString())
Output: 2020-08-05 13:14:15.999999 +0000 UTC
func (*Carbon) SetDateTimeMilli ¶
SetDateTimeMilli sets year, month, day, hour, minute, second and millisecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetDateTimeMilli(2020, 8, 5, 13, 14, 15, 999).ToString())
Output: 2020-08-05 13:14:15.999 +0000 UTC
func (*Carbon) SetDateTimeNano ¶
SetDateTimeNano sets year, month, day, hour, minute, second and nanosecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetDateTimeNano(2020, 8, 5, 13, 14, 15, 999999999).ToString())
Output: 2020-08-05 13:14:15.999999999 +0000 UTC
func (*Carbon) SetDay ¶
SetDay sets day.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetDay(31).ToString())
fmt.Println(carbon.Parse("2020-02-01").SetDay(31).ToString())
fmt.Println(carbon.Parse("2020-02-28").SetDay(31).ToString())
Output: 2020-01-31 00:00:00 +0000 UTC 2020-03-02 00:00:00 +0000 UTC 2020-03-02 00:00:00 +0000 UTC
func (*Carbon) SetFormat ¶ added in v2.6.0
SetFormat sets format.
Example ¶
c := carbon.Parse("2020-08-05 13:14:15.999999 +0000 UTC")
fmt.Println("date format:", c.SetFormat(carbon.DateFormat))
fmt.Println("time format:", c.SetFormat(carbon.TimeFormat))
fmt.Println("datetime format:", c.SetFormat(carbon.DateTimeFormat))
fmt.Println("timestamp format:", c.SetFormat(carbon.TimestampFormat))
Output: date format: 2020-08-05 time format: 13:14:15 datetime format: 2020-08-05 13:14:15 timestamp format: 1596633255
func (*Carbon) SetHour ¶
SetHour sets hour.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetHour(10).ToString())
fmt.Println(carbon.Parse("2020-02-01").SetHour(24).ToString())
fmt.Println(carbon.Parse("2020-02-28").SetHour(31).ToString())
Output: 2020-01-01 10:00:00 +0000 UTC 2020-02-02 00:00:00 +0000 UTC 2020-02-29 07:00:00 +0000 UTC
func (*Carbon) SetLanguage ¶ added in v2.6.0
SetLanguage sets language.
Example ¶
lang := carbon.NewLanguage()
lang.SetLocale("en")
fmt.Println(carbon.Parse("2020-08-05").SetLanguage(lang).ToMonthString())
lang.SetLocale("zh-CN")
fmt.Println(carbon.Parse("2020-08-05").SetLanguage(lang).ToMonthString())
Output: August 八月
func (*Carbon) SetLayout ¶ added in v2.6.0
SetLayout sets layout.
Example ¶
c := carbon.Parse("2020-08-05 13:14:15.999999 +0000 UTC")
fmt.Println("date layout:", c.SetLayout(carbon.DateLayout))
fmt.Println("time layout:", c.SetLayout(carbon.TimeLayout))
fmt.Println("datetime layout:", c.SetLayout(carbon.DateTimeLayout))
fmt.Println("timestamp layout:", c.SetLayout(carbon.TimestampLayout))
Output: date layout: 2020-08-05 time layout: 13:14:15 datetime layout: 2020-08-05 13:14:15 timestamp layout: 1596633255
func (*Carbon) SetLocale ¶
SetLocale sets locale.
Example ¶
c := carbon.Parse("2020-08-05").SetLocale("zh-CN")
fmt.Println(c.Constellation())
fmt.Println(c.Season())
fmt.Println(c.ToMonthString())
fmt.Println(c.ToShortMonthString())
fmt.Println(c.ToWeekString())
fmt.Println(c.ToShortWeekString())
Output: 狮子座 夏季 八月 8月 星期三 周三
func (*Carbon) SetLocation ¶
SetLocation sets location.
Example ¶
defer carbon.SetLocation(time.UTC)
c := carbon.Parse("2020-08-05")
loc, _ := time.LoadLocation(carbon.PRC)
c.SetLocation(loc)
fmt.Println("default location:", carbon.DefaultTimezone)
fmt.Println("zone location:", c.Timezone())
fmt.Println("zone name:", c.ZoneName())
fmt.Println("zone offset:", c.ZoneOffset())
Output: default location: UTC zone location: PRC zone name: CST zone offset: 28800
func (*Carbon) SetMicrosecond ¶
SetMicrosecond sets microsecond.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetMicrosecond(100000).ToString())
fmt.Println(carbon.Parse("2020-01-01").SetMicrosecond(999999).ToString())
Output: 2020-01-01 00:00:00.1 +0000 UTC 2020-01-01 00:00:00.999999 +0000 UTC
func (*Carbon) SetMillisecond ¶
SetMillisecond sets millisecond.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetMillisecond(100).ToString())
fmt.Println(carbon.Parse("2020-01-01").SetMillisecond(999).ToString())
Output: 2020-01-01 00:00:00.1 +0000 UTC 2020-01-01 00:00:00.999 +0000 UTC
func (*Carbon) SetMinute ¶
SetMinute sets minute.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetMinute(10).ToString())
fmt.Println(carbon.Parse("2020-02-01").SetMinute(24).ToString())
fmt.Println(carbon.Parse("2020-02-28").SetMinute(60).ToString())
Output: 2020-01-01 00:10:00 +0000 UTC 2020-02-01 00:24:00 +0000 UTC 2020-02-28 01:00:00 +0000 UTC
func (*Carbon) SetMonth ¶
SetMonth sets month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetMonth(2).ToString())
fmt.Println(carbon.Parse("2020-01-30").SetMonth(2).ToString())
fmt.Println(carbon.Parse("2020-01-31").SetMonth(2).ToString())
Output: 2020-02-01 00:00:00 +0000 UTC 2020-03-01 00:00:00 +0000 UTC 2020-03-02 00:00:00 +0000 UTC
func (*Carbon) SetMonthNoOverflow ¶
SetMonthNoOverflow sets month without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetMonthNoOverflow(2).ToString())
fmt.Println(carbon.Parse("2020-01-30").SetMonthNoOverflow(2).ToString())
fmt.Println(carbon.Parse("2020-01-31").SetMonthNoOverflow(2).ToString())
Output: 2020-02-01 00:00:00 +0000 UTC 2020-02-29 00:00:00 +0000 UTC 2020-02-29 00:00:00 +0000 UTC
func (*Carbon) SetNanosecond ¶
SetNanosecond sets nanosecond.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetNanosecond(100000000).ToString())
fmt.Println(carbon.Parse("2020-01-01").SetNanosecond(999999999).ToString())
Output: 2020-01-01 00:00:00.1 +0000 UTC 2020-01-01 00:00:00.999999999 +0000 UTC
func (*Carbon) SetSecond ¶
SetSecond sets second.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetSecond(10).ToString())
fmt.Println(carbon.Parse("2020-02-01").SetSecond(24).ToString())
fmt.Println(carbon.Parse("2020-02-28").SetSecond(60).ToString())
Output: 2020-01-01 00:00:10 +0000 UTC 2020-02-01 00:00:24 +0000 UTC 2020-02-28 00:01:00 +0000 UTC
func (*Carbon) SetTime ¶
SetTime sets hour, minute and second.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetTime(13, 14, 15).ToString())
Output: 2020-08-05 13:14:15 +0000 UTC
func (*Carbon) SetTimeMicro ¶
SetTimeMicro sets hour, minute, second and microsecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetTimeMicro(13, 14, 15, 999999).ToString())
Output: 2020-08-05 13:14:15.999999 +0000 UTC
func (*Carbon) SetTimeMilli ¶
SetTimeMilli sets hour, minute, second and millisecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetTimeMilli(13, 14, 15, 999).ToString())
Output: 2020-08-05 13:14:15.999 +0000 UTC
func (*Carbon) SetTimeNano ¶
SetTimeNano sets hour, minute, second and nanosecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").SetTimeNano(13, 14, 15, 999999999).ToString())
Output: 2020-08-05 13:14:15.999999999 +0000 UTC
func (*Carbon) SetTimezone ¶
SetTimezone sets timezone.
Example ¶
fmt.Println("UTC zone location:", carbon.Now().SetTimezone(carbon.UTC).Timezone())
fmt.Println("UTC zone name:", carbon.Now().SetTimezone(carbon.UTC).ZoneName())
fmt.Println("UTC zone offset:", carbon.Now().SetTimezone(carbon.UTC).ZoneOffset())
fmt.Println("PRC zone location:", carbon.Now().SetTimezone(carbon.PRC).Timezone())
fmt.Println("PRC zone name:", carbon.Now().SetTimezone(carbon.PRC).ZoneName())
fmt.Println("PRC zone offset:", carbon.Now().SetTimezone(carbon.PRC).ZoneOffset())
fmt.Println("Japan zone location:", carbon.Now().SetTimezone(carbon.Japan).Timezone())
fmt.Println("Japan zone name:", carbon.Now().SetTimezone(carbon.Japan).ZoneName())
fmt.Println("Japan zone offset:", carbon.Now().SetTimezone(carbon.Japan).ZoneOffset())
Output: UTC zone location: UTC UTC zone name: UTC UTC zone offset: 0 PRC zone location: PRC PRC zone name: CST PRC zone offset: 28800 Japan zone location: Japan Japan zone name: JST Japan zone offset: 32400
func (*Carbon) SetWeekStartsAt ¶
SetWeekStartsAt sets start day of the week.
Example ¶
fmt.Println("week starts at:", carbon.Now().SetWeekStartsAt(carbon.Sunday).WeekStartsAt())
fmt.Println("week starts at:", carbon.Now().SetWeekStartsAt(carbon.Monday).WeekStartsAt())
Output: week starts at: Sunday week starts at: Monday
func (*Carbon) SetWeekendDays ¶ added in v2.6.3
SetWeekendDays sets weekend days of the week.
Example ¶
wd1 := []carbon.Weekday{
carbon.Saturday,
}
fmt.Println(carbon.Parse("2025-04-12").SetWeekendDays(wd1).IsWeekend())
fmt.Println(carbon.Parse("2025-04-13").SetWeekendDays(wd1).IsWeekend())
wd2 := []carbon.Weekday{
carbon.Sunday,
}
fmt.Println(carbon.Parse("2025-04-12").SetWeekendDays(wd2).IsWeekend())
fmt.Println(carbon.Parse("2025-04-13").SetWeekendDays(wd2).IsWeekend())
Output: true false false true
func (*Carbon) SetYear ¶
SetYear sets year.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetYear(2019).ToString())
fmt.Println(carbon.Parse("2020-01-31").SetYear(2019).ToString())
fmt.Println(carbon.Parse("2020-02-29").SetYear(2019).ToString())
Output: 2019-01-01 00:00:00 +0000 UTC 2019-01-31 00:00:00 +0000 UTC 2019-03-01 00:00:00 +0000 UTC
func (*Carbon) SetYearNoOverflow ¶
SetYearNoOverflow sets year without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SetYearNoOverflow(2019).ToString())
fmt.Println(carbon.Parse("2020-01-31").SetYearNoOverflow(2019).ToString())
fmt.Println(carbon.Parse("2020-02-29").SetYearNoOverflow(2019).ToString())
Output: 2019-01-01 00:00:00 +0000 UTC 2019-01-31 00:00:00 +0000 UTC 2019-02-28 00:00:00 +0000 UTC
func (*Carbon) StartOfCentury ¶
StartOfCentury returns a Carbon instance for start of the century.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfCentury().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfCentury().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfCentury().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfCentury().ToString())
Output: 0000-01-01 00:00:00 +0000 UTC 2000-01-01 00:00:00 +0000 UTC 2000-01-01 00:00:00 +0000 UTC 2000-01-01 00:00:00 +0000 UTC
func (*Carbon) StartOfDay ¶
StartOfDay returns a Carbon instance for start of the day.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfDay().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfDay().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfDay().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfDay().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-08-15 00:00:00 +0000 UTC 2020-12-31 00:00:00 +0000 UTC
func (*Carbon) StartOfDecade ¶
StartOfDecade returns a Carbon instance for start of the decade.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfDecade().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfDecade().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfDecade().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfDecade().ToString())
Output: 0000-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC
func (*Carbon) StartOfHour ¶
StartOfHour returns a Carbon instance for start of the hour.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfHour().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfHour().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfHour().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfHour().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-08-15 12:00:00 +0000 UTC 2020-12-31 23:00:00 +0000 UTC
func (*Carbon) StartOfMinute ¶
StartOfMinute returns a Carbon instance for start of the minute.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfMinute().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfMinute().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfMinute().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfMinute().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-08-15 12:30:00 +0000 UTC 2020-12-31 23:59:00 +0000 UTC
func (*Carbon) StartOfMonth ¶
StartOfMonth returns a Carbon instance for start of the month.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfMonth().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfMonth().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfMonth().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfMonth().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-08-01 00:00:00 +0000 UTC 2020-12-01 00:00:00 +0000 UTC
func (*Carbon) StartOfQuarter ¶
StartOfQuarter returns a Carbon instance for start of the quarter.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfQuarter().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfQuarter().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfQuarter().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfQuarter().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-07-01 00:00:00 +0000 UTC 2020-10-01 00:00:00 +0000 UTC
func (*Carbon) StartOfSeason ¶
StartOfSeason returns a Carbon instance for start of the season.
Example ¶
fmt.Println(carbon.Parse("2020-01-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-02-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-03-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-04-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-05-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-06-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-07-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-08-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-09-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-10-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-11-15").StartOfSeason().ToString())
fmt.Println(carbon.Parse("2020-12-15").StartOfSeason().ToString())
Output: 2019-12-01 00:00:00 +0000 UTC 2019-12-01 00:00:00 +0000 UTC 2020-03-01 00:00:00 +0000 UTC 2020-03-01 00:00:00 +0000 UTC 2020-03-01 00:00:00 +0000 UTC 2020-06-01 00:00:00 +0000 UTC 2020-06-01 00:00:00 +0000 UTC 2020-06-01 00:00:00 +0000 UTC 2020-09-01 00:00:00 +0000 UTC 2020-09-01 00:00:00 +0000 UTC 2020-09-01 00:00:00 +0000 UTC 2020-12-01 00:00:00 +0000 UTC
func (*Carbon) StartOfSecond ¶
StartOfSecond returns a Carbon instance for start of the second.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfSecond().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfSecond().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfSecond().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfSecond().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-08-15 12:30:30 +0000 UTC 2020-12-31 23:59:59 +0000 UTC
func (*Carbon) StartOfWeek ¶
StartOfWeek returns a Carbon instance for start of the week.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfWeek().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfWeek().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfWeek().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfWeek().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC 2019-12-30 00:00:00 +0000 UTC 2020-08-10 00:00:00 +0000 UTC 2020-12-28 00:00:00 +0000 UTC
func (*Carbon) StartOfYear ¶
StartOfYear returns a Carbon instance for start of the year.
Example ¶
fmt.Println(carbon.NewCarbon().StartOfYear().ToString())
fmt.Println(carbon.Parse("2020-01-01 00:00:00").StartOfYear().ToString())
fmt.Println(carbon.Parse("2020-08-15 12:30:30").StartOfYear().ToString())
fmt.Println(carbon.Parse("2020-12-31 23:59:59").StartOfYear().ToString())
Output: 0001-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC 2020-01-01 00:00:00 +0000 UTC
func (*Carbon) StdTime ¶
StdTime gets standard time.Time.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").StdTime().String())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).StdTime().String())
Output: 2020-08-05 00:00:00 +0000 UTC 2020-08-05 00:00:00 +0800 CST
func (*Carbon) String ¶
String implements "Stringer" interface for Carbon struct.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").String())
Output: 2020-08-05 13:14:15
func (*Carbon) SubCenturies ¶
SubCenturies subtracts some centuries.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubCenturies(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubCenturies(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubCenturies(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 1920-01-01 13:14:15 +0000 UTC 1820-01-01 13:14:15 +0000 UTC
func (*Carbon) SubCenturiesNoOverflow ¶
SubCenturiesNoOverflow subtracts some centuries without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-02-28 13:14:15").SubCenturiesNoOverflow(0).ToString())
fmt.Println(carbon.Parse("2020-02-28 13:14:15").SubCenturiesNoOverflow(1).ToString())
fmt.Println(carbon.Parse("2020-02-28 13:14:15").SubCenturiesNoOverflow(2).ToString())
Output: 2020-02-28 13:14:15 +0000 UTC 1920-02-28 13:14:15 +0000 UTC 1820-02-28 13:14:15 +0000 UTC
func (*Carbon) SubCentury ¶
SubCentury subtracts one century.
Example ¶
fmt.Println(carbon.Parse("2020-02-28 13:14:15").SubCentury().ToString())
Output: 1920-02-28 13:14:15 +0000 UTC
func (*Carbon) SubCenturyNoOverflow ¶
SubCenturyNoOverflow subtracts one century without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-02-28 13:14:15").SubCenturyNoOverflow().ToString())
Output: 1920-02-28 13:14:15 +0000 UTC
func (*Carbon) SubDay ¶
SubDay subtracts one day.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubDay().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").SubDay().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubDay().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").SubDay().ToDateString())
Output: 2019-12-31 2020-02-27 2020-02-28 2020-11-29
func (*Carbon) SubDays ¶
SubDays subtracts some days.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubDays(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubDays(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubDays(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubDays(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").SubDays(2).ToDateString())
Output: 2020-01-01 2019-12-31 2019-12-30 2020-02-26 2020-08-29
func (*Carbon) SubDecade ¶
SubDecade subtracts one decade.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDecade().ToString())
Output: 2010-01-01 13:14:15 +0000 UTC
func (*Carbon) SubDecadeNoOverflow ¶
SubDecadeNoOverflow subtracts one decade without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDecadeNoOverflow().ToString())
Output: 2010-01-01 13:14:15 +0000 UTC
func (*Carbon) SubDecades ¶
SubDecades subtracts some decades.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDecades(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDecades(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDecades(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2010-01-01 13:14:15 +0000 UTC 2000-01-01 13:14:15 +0000 UTC
func (*Carbon) SubDecadesNoOverflow ¶
SubDecadesNoOverflow subtracts some decades without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDecadesNoOverflow(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDecadesNoOverflow(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDecadesNoOverflow(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2010-01-01 13:14:15 +0000 UTC 2000-01-01 13:14:15 +0000 UTC
func (*Carbon) SubDuration ¶
SubDuration subtracts duration.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDuration("10h").ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDuration("10.5h").ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDuration("10m").ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubDuration("10.5m").ToString())
Output: 2020-01-01 03:14:15 +0000 UTC 2020-01-01 02:44:15 +0000 UTC 2020-01-01 13:04:15 +0000 UTC 2020-01-01 13:03:45 +0000 UTC
func (*Carbon) SubHour ¶
SubHour subtracts one hour.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").SubHour().ToString())
Output: 2020-08-05 12:14:15 +0000 UTC
func (*Carbon) SubHours ¶
SubHours subtracts some hours.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubHours(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubHours(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubHours(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 12:14:15 +0000 UTC 2020-01-01 11:14:15 +0000 UTC
func (*Carbon) SubMicrosecond ¶
SubMicrosecond subtracts one microsecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").SubMicrosecond().ToString())
Output: 2020-08-05 13:14:14.999999 +0000 UTC
func (*Carbon) SubMicroseconds ¶
SubMicroseconds subtracts some microseconds.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubMicroseconds(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubMicroseconds(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubMicroseconds(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:14:14.999999 +0000 UTC 2020-01-01 13:14:14.999998 +0000 UTC
func (*Carbon) SubMillisecond ¶
SubMillisecond subtracts one millisecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").SubMillisecond().ToString())
Output: 2020-08-05 13:14:14.999 +0000 UTC
func (*Carbon) SubMilliseconds ¶
SubMilliseconds subtracts some milliseconds.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubMilliseconds(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubMilliseconds(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubMilliseconds(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:14:14.999 +0000 UTC 2020-01-01 13:14:14.998 +0000 UTC
func (*Carbon) SubMinute ¶
SubMinute subtracts one minute.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").SubMinute().ToString())
Output: 2020-08-05 13:13:15 +0000 UTC
func (*Carbon) SubMinutes ¶
SubMinutes subtracts some minutes.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubMinutes(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubMinutes(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubMinutes(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:13:15 +0000 UTC 2020-01-01 13:12:15 +0000 UTC
func (*Carbon) SubMonth ¶
SubMonth subtracts one month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubMonth().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").SubMonth().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubMonth().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").SubMonth().ToDateString())
Output: 2019-12-01 2020-01-28 2020-01-29 2020-10-30
func (*Carbon) SubMonthNoOverflow ¶
SubMonthNoOverflow subtracts one month without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubMonthNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").SubMonthNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubMonthNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").SubMonthNoOverflow().ToDateString())
Output: 2019-12-01 2020-01-28 2020-01-29 2020-10-30
func (*Carbon) SubMonths ¶
SubMonths subtracts some months.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubMonths(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubMonths(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubMonths(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubMonths(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").SubMonths(2).ToDateString())
Output: 2020-01-01 2019-12-01 2019-11-01 2019-11-29 2020-07-01
func (*Carbon) SubMonthsNoOverflow ¶
SubMonthsNoOverflow subtracts some months without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubMonthsNoOverflow(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubMonthsNoOverflow(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubMonthsNoOverflow(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubMonthsNoOverflow(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").SubMonthsNoOverflow(2).ToDateString())
Output: 2020-01-01 2019-12-01 2019-11-01 2019-11-29 2020-06-30
func (*Carbon) SubNanosecond ¶
SubNanosecond subtracts one nanosecond.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").SubNanosecond().ToString())
Output: 2020-08-05 13:14:14.999999999 +0000 UTC
func (*Carbon) SubNanoseconds ¶
SubNanoseconds subtracts some nanoseconds.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubNanoseconds(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubNanoseconds(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubNanoseconds(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:14:14.999999999 +0000 UTC 2020-01-01 13:14:14.999999998 +0000 UTC
func (*Carbon) SubQuarter ¶
SubQuarter subtracts one quarter.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubQuarter().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").SubQuarter().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubQuarter().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").SubQuarter().ToDateString())
Output: 2019-10-01 2019-11-28 2019-11-29 2020-08-30
func (*Carbon) SubQuarterNoOverflow ¶
SubQuarterNoOverflow subtracts one quarter without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubQuarterNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").SubQuarterNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubQuarterNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").SubQuarterNoOverflow().ToDateString())
Output: 2019-10-01 2019-11-28 2019-11-29 2020-08-30
func (*Carbon) SubQuarters ¶
SubQuarters subtracts some quarters.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubQuarters(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubQuarters(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubQuarters(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubQuarters(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").SubQuarters(2).ToDateString())
Output: 2020-01-01 2019-10-01 2019-07-01 2019-05-29 2020-03-02
func (*Carbon) SubQuartersNoOverflow ¶
SubQuartersNoOverflow subtracts some quarters without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubQuartersNoOverflow(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubQuartersNoOverflow(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubQuartersNoOverflow(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubQuartersNoOverflow(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").SubQuartersNoOverflow(2).ToDateString())
Output: 2020-01-01 2019-10-01 2019-07-01 2019-05-29 2020-02-29
func (*Carbon) SubSecond ¶
SubSecond subtracts one second.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").SubSecond().ToString())
Output: 2020-08-05 13:14:14 +0000 UTC
func (*Carbon) SubSeconds ¶
SubSeconds subtracts some seconds.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubSeconds(0).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubSeconds(1).ToString())
fmt.Println(carbon.Parse("2020-01-01 13:14:15").SubSeconds(2).ToString())
Output: 2020-01-01 13:14:15 +0000 UTC 2020-01-01 13:14:14 +0000 UTC 2020-01-01 13:14:13 +0000 UTC
func (*Carbon) SubWeek ¶
SubWeek subtracts one week.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubWeek().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").SubWeek().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubWeek().ToDateString())
fmt.Println(carbon.Parse("2020-11-30").SubWeek().ToDateString())
Output: 2019-12-25 2020-02-21 2020-02-22 2020-11-23
func (*Carbon) SubWeeks ¶
SubWeeks subtracts some weeks.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubWeeks(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubWeeks(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubWeeks(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubWeeks(3).ToDateString())
fmt.Println(carbon.Parse("2020-08-31").SubWeeks(2).ToDateString())
Output: 2020-01-01 2019-12-25 2019-12-18 2020-02-08 2020-08-17
func (*Carbon) SubYear ¶
SubYear subtracts one year.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubYear().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").SubYear().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubYear().ToDateString())
Output: 2019-01-01 2019-02-28 2019-03-01
func (*Carbon) SubYearNoOverflow ¶
SubYearNoOverflow subtracts one year without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubYearNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-28").SubYearNoOverflow().ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubYearNoOverflow().ToDateString())
Output: 2019-01-01 2019-02-28 2019-02-28
func (*Carbon) SubYears ¶
SubYears subtracts some years.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubYears(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubYears(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubYears(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubYears(3).ToDateString())
Output: 2020-01-01 2019-01-01 2018-01-01 2017-03-01
func (*Carbon) SubYearsNoOverflow ¶
SubYearsNoOverflow subtracts some years without overflowing month.
Example ¶
fmt.Println(carbon.Parse("2020-01-01").SubYearsNoOverflow(0).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubYearsNoOverflow(1).ToDateString())
fmt.Println(carbon.Parse("2020-01-01").SubYearsNoOverflow(2).ToDateString())
fmt.Println(carbon.Parse("2020-02-29").SubYearsNoOverflow(3).ToDateString())
Output: 2020-01-01 2019-01-01 2018-01-01 2017-02-28
func (*Carbon) Time ¶
Time gets current hour, minute, and second like 13, 14, 15.
Example ¶
hour, minute, second := carbon.Parse("2020-08-05 13:14:15.999999999").Time()
fmt.Println(hour)
fmt.Println(minute)
fmt.Println(second)
Output: 13 14 15
func (*Carbon) TimeMicro ¶
TimeMicro gets current hour, minute, second and microsecond like 13, 14, 15, 999999.
Example ¶
hour, minute, second, microsecond := carbon.Parse("2020-08-05 13:14:15.999999999").TimeMicro()
fmt.Println(hour)
fmt.Println(minute)
fmt.Println(second)
fmt.Println(microsecond)
Output: 13 14 15 999999
func (*Carbon) TimeMilli ¶
TimeMilli gets current hour, minute, second and millisecond like 13, 14, 15, 999.
Example ¶
hour, minute, second, millisecond := carbon.Parse("2020-08-05 13:14:15.999999999").TimeMilli()
fmt.Println(hour)
fmt.Println(minute)
fmt.Println(second)
fmt.Println(millisecond)
Output: 13 14 15 999
func (*Carbon) TimeNano ¶
TimeNano gets current hour, minute, second and nanosecond like 13, 14, 15, 999999999.
Example ¶
hour, minute, second, nanosecond := carbon.Parse("2020-08-05 13:14:15.999999999").TimeNano()
fmt.Println(hour)
fmt.Println(minute)
fmt.Println(second)
fmt.Println(nanosecond)
Output: 13 14 15 999999999
func (*Carbon) Timestamp ¶
Timestamp gets timestamp with second precision like 1596604455.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15", carbon.PRC).Timestamp())
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").Timestamp())
Output: 1577855655 1596633255
func (*Carbon) TimestampMicro ¶
TimestampMicro gets timestamp with microsecond precision like 1596604455000000.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15", carbon.PRC).TimestampMicro())
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").TimestampMicro())
Output: 1577855655000000 1596633255999999
func (*Carbon) TimestampMilli ¶
TimestampMilli gets timestamp with millisecond precision like 1596604455000.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15", carbon.PRC).TimestampMilli())
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").TimestampMilli())
Output: 1577855655000 1596633255999
func (*Carbon) TimestampNano ¶
TimestampNano gets timestamp with nanosecond precision like 1596604455000000000.
Example ¶
fmt.Println(carbon.Parse("2020-01-01 13:14:15", carbon.PRC).TimestampNano())
fmt.Println(carbon.Parse("2020-08-05 13:14:15.999999999").TimestampNano())
Output: 1577855655000000000 1596633255999999999
func (*Carbon) Timezone ¶
Timezone gets timezone location like "Asia/Shanghai".
Example ¶
fmt.Println(carbon.Now().Timezone()) fmt.Println(carbon.Now(carbon.Tokyo).Timezone()) fmt.Println(carbon.Now(carbon.PRC).Timezone())
Output: UTC Asia/Tokyo PRC
func (*Carbon) ToAnsicString ¶
ToAnsicString outputs a string in "Mon Jan _2 15:04:05 2006" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToAnsicString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToAnsicString())
Output: Wed Aug 5 13:14:15 2020 Wed Aug 5 00:00:00 2020
func (*Carbon) ToAtomString ¶
ToAtomString outputs a string in "2006-01-02T15:04:05Z07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToAtomString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToAtomString())
Output: 2020-08-05T13:14:15Z 2020-08-05T00:00:00+08:00
func (*Carbon) ToCookieString ¶
ToCookieString outputs a string in "Monday, 02-Jan-2006 15:04:05 MST" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToCookieString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToCookieString())
Output: Wednesday, 05-Aug-2020 13:14:15 UTC Wednesday, 05-Aug-2020 00:00:00 CST
func (*Carbon) ToDateMicroString ¶
ToDateMicroString outputs a string in "2006-01-02.999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToDateMicroString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToDateMicroString())
Output: 2020-08-05.999999 2020-08-05
func (*Carbon) ToDateMilliString ¶
ToDateMilliString outputs a string in "2006-01-02.999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToDateMilliString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToDateMilliString())
Output: 2020-08-05.999 2020-08-05
func (*Carbon) ToDateNanoString ¶
ToDateNanoString outputs a string in "2006-01-02.999999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToDateNanoString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToDateNanoString())
Output: 2020-08-05.999999999 2020-08-05
func (*Carbon) ToDateString ¶
ToDateString outputs a string in "2006-01-02" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToDateString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToDateString())
Output: 2020-08-05 2020-08-05
func (*Carbon) ToDateTimeMicroString ¶
ToDateTimeMicroString outputs a string in "2006-01-02 15:04:05.999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToDateTimeMicroString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToDateTimeMicroString())
Output: 2020-08-05 13:14:15.999999 2020-08-05 00:00:00
func (*Carbon) ToDateTimeMilliString ¶
ToDateTimeMilliString outputs a string in "2006-01-02 15:04:05.999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToDateTimeMilliString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToDateTimeMilliString())
Output: 2020-08-05 13:14:15.999 2020-08-05 00:00:00
func (*Carbon) ToDateTimeNanoString ¶
ToDateTimeNanoString outputs a string in "2006-01-02 15:04:05.999999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToDateTimeNanoString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToDateTimeNanoString())
Output: 2020-08-05 13:14:15.999999999 2020-08-05 00:00:00
func (*Carbon) ToDateTimeString ¶
ToDateTimeString outputs a string in "2006-01-02 15:04:05" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToDateTimeString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToDateTimeString())
Output: 2020-08-05 13:14:15 2020-08-05 00:00:00
func (*Carbon) ToDayDateTimeString ¶
ToDayDateTimeString outputs a string in "Mon, Jan 2, 2006 3:04 PM" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").ToDayDateTimeString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToDayDateTimeString())
Output: Wed, Aug 5, 2020 1:14 PM Wed, Aug 5, 2020 12:00 AM
func (*Carbon) ToFormattedDateString ¶
ToFormattedDateString outputs a string in "Jan 2, 2006" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToFormattedDateString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToFormattedDateString())
Output: Aug 5, 2020 Aug 5, 2020
func (*Carbon) ToFormattedDayDateString ¶
ToFormattedDayDateString outputs a string in "Mon, Jan 2, 2006" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToFormattedDayDateString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToFormattedDayDateString())
Output: Wed, Aug 5, 2020 Wed, Aug 5, 2020
func (*Carbon) ToHttpString ¶ added in v2.6.15
ToHttpString outputs a string in "Mon, 02 Jan 2006 15:04:05 GMT" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToHttpString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToHttpString())
Output: Wed, 05 Aug 2020 13:14:15 GMT Wed, 05 Aug 2020 00:00:00 GMT
func (*Carbon) ToIso8601MicroString ¶
ToIso8601MicroString outputs a string in "2006-01-02T15:04:05.999999-07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToIso8601MicroString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToIso8601MicroString())
Output: 2020-08-05T13:14:15.999999+00:00 2020-08-05T00:00:00+08:00
func (*Carbon) ToIso8601MilliString ¶
ToIso8601MilliString outputs a string in "2006-01-02T15:04:05.999-07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToIso8601MilliString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToIso8601MilliString())
Output: 2020-08-05T13:14:15.999+00:00 2020-08-05T00:00:00+08:00
func (*Carbon) ToIso8601NanoString ¶
ToIso8601NanoString outputs a string in "2006-01-02T15:04:05.999999999-07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToIso8601NanoString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToIso8601NanoString())
Output: 2020-08-05T13:14:15.999999999+00:00 2020-08-05T00:00:00+08:00
func (*Carbon) ToIso8601String ¶
ToIso8601String outputs a string in "2006-01-02T15:04:05-07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToIso8601String())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToIso8601String())
Output: 2020-08-05T13:14:15+00:00 2020-08-05T00:00:00+08:00
func (*Carbon) ToIso8601ZuluMicroString ¶
ToIso8601ZuluMicroString outputs a string in "2006-01-02T15:04:05.999999Z" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToIso8601ZuluMicroString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToIso8601ZuluMicroString())
Output: 2020-08-05T13:14:15.999999Z 2020-08-05T00:00:00Z
func (*Carbon) ToIso8601ZuluMilliString ¶
ToIso8601ZuluMilliString outputs a string in "2006-01-02T15:04:05.999Z" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToIso8601ZuluMilliString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToIso8601ZuluMilliString())
Output: 2020-08-05T13:14:15.999Z 2020-08-05T00:00:00Z
func (*Carbon) ToIso8601ZuluNanoString ¶
ToIso8601ZuluNanoString outputs a string in "2006-01-02T15:04:05.999999999Z" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToIso8601ZuluNanoString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToIso8601ZuluNanoString())
Output: 2020-08-05T13:14:15.999999999Z 2020-08-05T00:00:00Z
func (*Carbon) ToIso8601ZuluString ¶
ToIso8601ZuluString outputs a string in "2006-01-02T15:04:05Z" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToIso8601ZuluString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToIso8601ZuluString())
Output: 2020-08-05T13:14:15Z 2020-08-05T00:00:00Z
func (*Carbon) ToKitchenString ¶
ToKitchenString outputs a string in "3:04PM" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToKitchenString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToKitchenString())
Output: 1:14PM 12:00AM
func (*Carbon) ToMonthString ¶
ToMonthString outputs a string in month layout like "January", i18n is supported.
Example ¶
fmt.Println(carbon.Parse("2020-01-05").ToMonthString())
fmt.Println(carbon.Parse("2020-02-05").ToMonthString())
fmt.Println(carbon.Parse("2020-03-05").ToMonthString())
fmt.Println(carbon.Parse("2020-04-05").ToMonthString())
fmt.Println(carbon.Parse("2020-05-05").ToMonthString())
fmt.Println(carbon.Parse("2020-06-05").ToMonthString())
fmt.Println(carbon.Parse("2020-07-05").ToMonthString())
fmt.Println(carbon.Parse("2020-08-05").ToMonthString())
fmt.Println(carbon.Parse("2020-09-05").ToMonthString())
fmt.Println(carbon.Parse("2020-10-05").ToMonthString())
fmt.Println(carbon.Parse("2020-11-05").ToMonthString())
fmt.Println(carbon.Parse("2020-12-05").ToMonthString())
Output: January February March April May June July August September October November December
func (*Carbon) ToRfc1036String ¶
ToRfc1036String outputs a string in "Mon, 02 Jan 06 15:04:05 -0700" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc1036String())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc1036String())
Output: Wed, 05 Aug 20 13:14:15 +0000 Wed, 05 Aug 20 00:00:00 +0800
func (*Carbon) ToRfc1123String ¶
ToRfc1123String outputs a string in "Mon, 02 Jan 2006 15:04:05 MST" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc1123String())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc1123String())
Output: Wed, 05 Aug 2020 13:14:15 UTC Wed, 05 Aug 2020 00:00:00 CST
func (*Carbon) ToRfc1123zString ¶
ToRfc1123zString outputs a string in "Mon, 02 Jan 2006 15:04:05 -0700" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc1123zString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc1123zString())
Output: Wed, 05 Aug 2020 13:14:15 +0000 Wed, 05 Aug 2020 00:00:00 +0800
func (*Carbon) ToRfc2822String ¶
ToRfc2822String outputs a string in "Mon, 02 Jan 2006 15:04:05 -0700" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc2822String())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc2822String())
Output: Wed, 05 Aug 2020 13:14:15 +0000 Wed, 05 Aug 2020 00:00:00 +0800
func (*Carbon) ToRfc3339MicroString ¶
ToRfc3339MicroString outputs a string in "2006-01-02T15:04:05.999999Z07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc3339MicroString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc3339MicroString())
Output: 2020-08-05T13:14:15.999999Z 2020-08-05T00:00:00+08:00
func (*Carbon) ToRfc3339MilliString ¶
ToRfc3339MilliString outputs a string in "2006-01-02T15:04:05.999Z07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc3339MilliString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc3339MilliString())
Output: 2020-08-05T13:14:15.999Z 2020-08-05T00:00:00+08:00
func (*Carbon) ToRfc3339NanoString ¶
ToRfc3339NanoString outputs a string in "2006-01-02T15:04:05.999999999Z07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc3339NanoString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc3339NanoString())
Output: 2020-08-05T13:14:15.999999999Z 2020-08-05T00:00:00+08:00
func (*Carbon) ToRfc3339String ¶
ToRfc3339String outputs a string in "2006-01-02T15:04:05Z07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc3339String())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc3339String())
Output: 2020-08-05T13:14:15Z 2020-08-05T00:00:00+08:00
func (*Carbon) ToRfc7231String ¶
ToRfc7231String outputs a string in "Mon, 02 Jan 2006 15:04:05 GMT" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc7231String())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc7231String())
Output: Wed, 05 Aug 2020 13:14:15 UTC Wed, 05 Aug 2020 00:00:00 CST
func (*Carbon) ToRfc822String ¶
ToRfc822String outputs a string in "02 Jan 06 15:04 MST" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc822String())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc822String())
Output: 05 Aug 20 13:14 UTC 05 Aug 20 00:00 CST
func (*Carbon) ToRfc822zString ¶
ToRfc822zString outputs a string in "02 Jan 06 15:04 -0700" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc822zString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc822zString())
Output: 05 Aug 20 13:14 +0000 05 Aug 20 00:00 +0800
func (*Carbon) ToRfc850String ¶
ToRfc850String outputs a string in "Monday, 02-Jan-06 15:04:05 MST" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRfc850String())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRfc850String())
Output: Wednesday, 05-Aug-20 13:14:15 UTC Wednesday, 05-Aug-20 00:00:00 CST
func (*Carbon) ToRssString ¶
ToRssString outputs a string in "Mon, 02 Jan 2006 15:04:05 -0700" format.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRssString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRssString())
Output: Wed, 05 Aug 2020 13:14:15 +0000 Wed, 05 Aug 2020 00:00:00 +0800
func (*Carbon) ToRubyDateString ¶
ToRubyDateString outputs a string in "Mon Jan 02 15:04:05 -0700 2006" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToRubyDateString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToRubyDateString())
Output: Wed Aug 05 13:14:15 +0000 2020 Wed Aug 05 00:00:00 +0800 2020
func (*Carbon) ToShortDateMicroString ¶
ToShortDateMicroString outputs a string in "20060102.999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortDateMicroString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortDateMicroString())
Output: 20200805.999999 20200805
func (*Carbon) ToShortDateMilliString ¶
ToShortDateMilliString outputs a string in "20060102.999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortDateMilliString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortDateMilliString())
Output: 20200805.999 20200805
func (*Carbon) ToShortDateNanoString ¶
ToShortDateNanoString outputs a string in "20060102.999999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortDateNanoString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortDateNanoString())
Output: 20200805.999999999 20200805
func (*Carbon) ToShortDateString ¶
ToShortDateString outputs a string in "20060102" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortDateString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortDateString())
Output: 20200805 20200805
func (*Carbon) ToShortDateTimeMicroString ¶
ToShortDateTimeMicroString outputs a string in "20060102150405.999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortDateTimeMicroString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortDateTimeMicroString())
Output: 20200805131415.999999 20200805000000
func (*Carbon) ToShortDateTimeMilliString ¶
ToShortDateTimeMilliString outputs a string in "20060102150405.999" layout. 输出 "20060102150405.999" 格式字符串
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortDateTimeMilliString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortDateTimeMilliString())
Output: 20200805131415.999 20200805000000
func (*Carbon) ToShortDateTimeNanoString ¶
ToShortDateTimeNanoString outputs a string in "20060102150405.999999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortDateTimeNanoString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortDateTimeNanoString())
Output: 20200805131415.999999999 20200805000000
func (*Carbon) ToShortDateTimeString ¶
ToShortDateTimeString outputs a string in "20060102150405" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortDateTimeString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortDateTimeString())
Output: 20200805131415 20200805000000
func (*Carbon) ToShortMonthString ¶
ToShortMonthString outputs a string in short month layout like "Jan", i18n is supported.
Example ¶
fmt.Println(carbon.Parse("2020-01-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-02-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-03-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-04-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-05-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-06-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-07-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-08-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-09-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-10-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-11-05").ToShortMonthString())
fmt.Println(carbon.Parse("2020-12-05").ToShortMonthString())
Output: Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
func (*Carbon) ToShortTimeMicroString ¶
ToShortTimeMicroString outputs a string in "150405.999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortTimeMicroString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortTimeMicroString())
Output: 131415.999999 000000
func (*Carbon) ToShortTimeMilliString ¶
ToShortTimeMilliString outputs a string in "150405.999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortTimeMilliString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortTimeMilliString())
Output: 131415.999 000000
func (*Carbon) ToShortTimeNanoString ¶
ToShortTimeNanoString outputs a string in "150405.999999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortTimeNanoString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortTimeNanoString())
Output: 131415.999999999 000000
func (*Carbon) ToShortTimeString ¶
ToShortTimeString outputs a string in "150405" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToShortTimeString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToShortTimeString())
Output: 131415 000000
func (*Carbon) ToShortWeekString ¶
ToShortWeekString outputs a string in short week layout like "Sun", i18n is supported.
Example ¶
fmt.Println(carbon.Parse("2020-08-01").ToShortWeekString())
fmt.Println(carbon.Parse("2020-08-02").ToShortWeekString())
fmt.Println(carbon.Parse("2020-08-03").ToShortWeekString())
fmt.Println(carbon.Parse("2020-08-04").ToShortWeekString())
fmt.Println(carbon.Parse("2020-08-05").ToShortWeekString())
fmt.Println(carbon.Parse("2020-08-06").ToShortWeekString())
fmt.Println(carbon.Parse("2020-08-07").ToShortWeekString())
Output: Sat Sun Mon Tue Wed Thu Fri
func (*Carbon) ToString ¶
ToString outputs a string in "2006-01-02 15:04:05.999999999 -0700 MST" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05 13:14:15").ToString())
fmt.Println(carbon.Parse("2020-08-05 13:14:15", carbon.PRC).ToString())
Output: 2020-08-05 13:14:15 +0000 UTC 2020-08-05 13:14:15 +0800 CST
func (*Carbon) ToTimeMicroString ¶
ToTimeMicroString outputs a string in "15:04:05.999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToTimeMicroString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToTimeMicroString())
Output: 13:14:15.999999 00:00:00
func (*Carbon) ToTimeMilliString ¶
ToTimeMilliString outputs a string in "15:04:05.999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToTimeMilliString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToTimeMilliString())
Output: 13:14:15.999 00:00:00
func (*Carbon) ToTimeNanoString ¶
ToTimeNanoString outputs a string in "15:04:05.999999999" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToTimeNanoString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToTimeNanoString())
Output: 13:14:15.999999999 00:00:00
func (*Carbon) ToTimeString ¶
ToTimeString outputs a string in "15:04:05" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToTimeString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToTimeString())
Output: 13:14:15 00:00:00
func (*Carbon) ToUnixDateString ¶
ToUnixDateString outputs a string in "Mon Jan _2 15:04:05 MST 2006" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToUnixDateString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToUnixDateString())
Output: Wed Aug 5 13:14:15 UTC 2020 Wed Aug 5 00:00:00 CST 2020
func (*Carbon) ToW3cString ¶
ToW3cString outputs a string in "2006-01-02T15:04:05Z07:00" layout.
Example ¶
fmt.Println(carbon.Parse("2020-08-05T13:14:15.999999999+00:00").ToW3cString())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ToW3cString())
Output: 2020-08-05T13:14:15Z 2020-08-05T00:00:00+08:00
func (*Carbon) ToWeekString ¶
ToWeekString outputs a string in week layout like "Sunday", i18n is supported.
Example ¶
fmt.Println(carbon.Parse("2020-08-01").ToWeekString())
fmt.Println(carbon.Parse("2020-08-02").ToWeekString())
fmt.Println(carbon.Parse("2020-08-03").ToWeekString())
fmt.Println(carbon.Parse("2020-08-04").ToWeekString())
fmt.Println(carbon.Parse("2020-08-05").ToWeekString())
fmt.Println(carbon.Parse("2020-08-06").ToWeekString())
fmt.Println(carbon.Parse("2020-08-07").ToWeekString())
Output: Saturday Sunday Monday Tuesday Wednesday Thursday Friday
func (*Carbon) UnmarshalJSON ¶
UnmarshalJSON implements "json.Unmarshaler" interface for Carbon struct.
Example ¶
type User struct {
Carbon1 carbon.Carbon `json:"carbon1"`
Carbon2 *carbon.Carbon `json:"carbon2"`
}
var user User
value := `{"carbon1":"2020-08-05 13:14:15","carbon2":"2020-08-05 13:14:15"}`
_ = json.Unmarshal([]byte(value), &user)
fmt.Println("user.Carbon1:", user.Carbon1.String())
fmt.Println("user.Carbon2:", user.Carbon2.String())
Output: user.Carbon1: 2020-08-05 13:14:15 user.Carbon2: 2020-08-05 13:14:15
func (*Carbon) Week ¶
Week gets current week like 6, start from 0.
Example ¶
fmt.Println(carbon.Parse("2020-08-03").Week())
fmt.Println(carbon.Parse("2020-08-04").Week())
fmt.Println(carbon.Parse("2020-08-05").Week())
fmt.Println(carbon.Parse("2020-08-09").Week())
Output: 0 1 2 6
func (*Carbon) WeekEndsAt ¶ added in v2.6.3
WeekEndsAt returns end day of the week.
Example ¶
fmt.Println(carbon.Now().SetWeekStartsAt(carbon.Sunday).WeekEndsAt()) fmt.Println(carbon.Now().SetWeekStartsAt(carbon.Monday).WeekEndsAt())
Output: Saturday Sunday
func (*Carbon) WeekOfMonth ¶
WeekOfMonth gets week of month like 1.
Example ¶
fmt.Println(carbon.Parse("2021-07-01").WeekOfMonth())
fmt.Println(carbon.Parse("2021-07-02").WeekOfMonth())
fmt.Println(carbon.Parse("2021-07-03").WeekOfMonth())
fmt.Println(carbon.Parse("2021-07-04").WeekOfMonth())
fmt.Println(carbon.Parse("2021-07-05").WeekOfMonth())
fmt.Println(carbon.Parse("2021-07-06").WeekOfMonth())
Output: 1 1 1 1 2 2
func (*Carbon) WeekOfYear ¶
WeekOfYear gets week of year like 1.
refer to https://en.wikipedia.org/wiki/ISO_8601#Week_dates.
Example ¶
fmt.Println(carbon.Parse("2021-01-01").WeekOfYear())
fmt.Println(carbon.Parse("2021-02-01").WeekOfYear())
fmt.Println(carbon.Parse("2021-03-01").WeekOfYear())
fmt.Println(carbon.Parse("2021-04-01").WeekOfYear())
Output: 53 5 9 13
func (*Carbon) WeekStartsAt ¶ added in v2.6.0
WeekStartsAt returns start day of the week.
Example ¶
fmt.Println(carbon.Now().SetWeekStartsAt(carbon.Sunday).WeekStartsAt()) fmt.Println(carbon.Now().SetWeekStartsAt(carbon.Monday).WeekStartsAt())
Output: Sunday Monday
func (*Carbon) Year ¶
Year gets current year like 2020.
Example ¶
fmt.Println(carbon.Parse("2010-08-05").Year())
fmt.Println(carbon.Parse("2011-08-05").Year())
fmt.Println(carbon.Parse("2020-08-05").Year())
fmt.Println(carbon.Parse("2021-08-05").Year())
Output: 2010 2011 2020 2021
func (*Carbon) ZoneName ¶ added in v2.6.0
ZoneName gets timezone name like "CST".
Example ¶
fmt.Println(carbon.Now().ZoneName()) fmt.Println(carbon.Now(carbon.Tokyo).ZoneName()) fmt.Println(carbon.Now(carbon.PRC).ZoneName())
Output: UTC JST CST
func (*Carbon) ZoneOffset ¶ added in v2.6.0
ZoneOffset gets timezone offset seconds from the UTC timezone like 28800.
Example ¶
fmt.Println(carbon.Parse("2020-08-05").ZoneOffset())
fmt.Println(carbon.Parse("2020-08-05", carbon.Tokyo).ZoneOffset())
fmt.Println(carbon.Parse("2020-08-05", carbon.PRC).ZoneOffset())
Output: 0 32400 28800
type DateTimeMicro ¶
type DateTimeMicro = LayoutType[datetimeMicroType]
func NewDateTimeMicro ¶
func NewDateTimeMicro(c *Carbon) *DateTimeMicro
type DateTimeMilli ¶
type DateTimeMilli = LayoutType[datetimeMilliType]
func NewDateTimeMilli ¶
func NewDateTimeMilli(c *Carbon) *DateTimeMilli
type DateTimeNano ¶
type DateTimeNano = LayoutType[datetimeNanoType]
func NewDateTimeNano ¶
func NewDateTimeNano(c *Carbon) *DateTimeNano
type Duration ¶ added in v2.6.3
func MaxDuration ¶ added in v2.6.2
func MaxDuration() Duration
MaxDuration returns the maximum value of duration instance.
Example ¶
fmt.Println(carbon.MaxDuration().Seconds())
Output: 9.223372036854776e+09
func MinDuration ¶ added in v2.6.2
func MinDuration() Duration
MinDuration returns the minimum value of duration instance.
Example ¶
fmt.Println(carbon.MinDuration().Seconds())
Output: -9.223372036854776e+09
type FormatType ¶ added in v2.6.0
type FormatType[T FormatTyper] struct { *Carbon }
FormatType defines a FormatType generic struct.
func NewFormatType ¶ added in v2.6.0
func NewFormatType[T FormatTyper](c *Carbon) *FormatType[T]
NewFormatType returns a new FormatType generic instance.
func (FormatType[T]) MarshalJSON ¶ added in v2.6.0
func (t FormatType[T]) MarshalJSON() ([]byte, error)
MarshalJSON implements "json.Marshaler" interface for FormatType generic struct.
Example ¶
// type RFC3339Type string
//
// func (RFC3339Type) Format() string {
// return carbon.RFC3339Format
// }
type User struct {
Customer1 carbon.FormatType[RFC3339Type] `json:"customer1"`
Customer2 *carbon.FormatType[RFC3339Type] `json:"customer2"`
}
c := carbon.Parse("2020-08-05 13:14:15.999999999")
user := User{
Customer1: *carbon.NewFormatType[RFC3339Type](c),
Customer2: carbon.NewFormatType[RFC3339Type](c),
}
data, _ := json.Marshal(&user)
fmt.Printf("%s", data)
Output: {"customer1":"2020-08-05T13:14:15Z","customer2":"2020-08-05T13:14:15Z"}
func (*FormatType[T]) Scan ¶ added in v2.6.0
func (t *FormatType[T]) Scan(src any) error
Scan implements "driver.Scanner" interface for FormatType generic struct.
func (*FormatType[T]) String ¶ added in v2.6.0
func (t *FormatType[T]) String() string
String implements "Stringer" interface for FormatType generic struct.
Example ¶
c := carbon.Parse("2020-08-05 13:14:15.999999999")
fmt.Println(carbon.NewFormatType[RFC3339Type](c).String())
Output: 2020-08-05T13:14:15Z
func (*FormatType[T]) UnmarshalJSON ¶ added in v2.6.0
func (t *FormatType[T]) UnmarshalJSON(src []byte) error
UnmarshalJSON implements "json.Unmarshaler" interface for FormatType generic struct.
Example ¶
// type RFC3339Type string
//
// func (RFC3339Type) Format() string {
// return carbon.RFC3339Format
// }
type User struct {
Customer1 carbon.FormatType[RFC3339Type] `json:"customer1"`
Customer2 *carbon.FormatType[RFC3339Type] `json:"customer2"`
}
var user User
value := `{"customer1":"2020-08-05T13:14:15Z","customer2":"2020-08-05T13:14:15Z"}`
_ = json.Unmarshal([]byte(value), &user)
fmt.Println("user.Customer1:", user.Customer1.String())
fmt.Println("user.Customer2:", user.Customer2.String())
Output: user.Customer1: 2020-08-05T13:14:15Z user.Customer2: 2020-08-05T13:14:15Z
type FormatTyper ¶ added in v2.6.4
FormatTyper defines a FormatTyper interface.
type FrozenNow ¶ added in v2.6.3
type FrozenNow struct {
// contains filtered or unexported fields
}
FrozenNow defines a FrozenNow struct.
type Language ¶
type Language struct {
Error error
// contains filtered or unexported fields
}
Language defines a Language struct.
func (*Language) SetLocale ¶
SetLocale sets language locale.
Example ¶
lang := carbon.NewLanguage()
lang.SetLocale("en")
fmt.Printf("en:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang).Constellation())
fmt.Printf("en:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang).Season())
fmt.Printf("en:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang).DiffForHumans(carbon.Parse("2024-08-05")))
fmt.Printf("en:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang).ToMonthString())
fmt.Printf("en:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang).ToShortMonthString())
fmt.Printf("en:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang).ToWeekString())
fmt.Printf("en:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang).ToShortWeekString())
lang.SetLocale("zh-CN")
fmt.Printf("zh-CN:%s\n", carbon.Parse("2020-08-05", carbon.PRC).SetLanguage(lang).Constellation())
fmt.Printf("zh-CN:%s\n", carbon.Parse("2020-08-05", carbon.PRC).SetLanguage(lang).Season())
fmt.Printf("zh-CN:%s\n", carbon.Parse("2020-08-05", carbon.PRC).SetLanguage(lang).DiffForHumans(carbon.Parse("2024-08-05")))
fmt.Printf("zh-CN:%s\n", carbon.Parse("2020-08-05", carbon.PRC).SetLanguage(lang).ToMonthString())
fmt.Printf("zh-CN:%s\n", carbon.Parse("2020-08-05", carbon.PRC).SetLanguage(lang).ToShortMonthString())
fmt.Printf("zh-CN:%s\n", carbon.Parse("2020-08-05", carbon.PRC).SetLanguage(lang).ToWeekString())
fmt.Printf("zh-CN:%s\n", carbon.Parse("2020-08-05", carbon.PRC).SetLanguage(lang).ToShortWeekString())
Output: en:Leo en:Summer en:4 years before en:August en:Aug en:Wednesday en:Wed zh-CN:狮子座 zh-CN:夏季 zh-CN:4 年前 zh-CN:八月 zh-CN:8月 zh-CN:星期三 zh-CN:周三
func (*Language) SetResources ¶
SetResources sets language resources.
Example ¶
resources1 := map[string]string{
"months": "Ⅰ月|Ⅱ月|Ⅲ月|Ⅳ月|Ⅴ月|Ⅵ月|Ⅶ月|Ⅷ月|Ⅸ月|Ⅹ月|Ⅺ月|Ⅻ月",
"short_months": "Ⅰ|Ⅱ|Ⅲ|Ⅳ|Ⅴ|Ⅵ|Ⅶ|Ⅷ|Ⅸ|Ⅹ|Ⅺ|Ⅻ",
}
lang1 := carbon.NewLanguage()
lang1.SetLocale("en").SetResources(resources1)
fmt.Printf("lang1:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang1).Constellation())
fmt.Printf("lang1:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang1).Season())
fmt.Printf("lang1:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang1).DiffForHumans(carbon.Parse("2024-08-05")))
fmt.Printf("lang1:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang1).ToMonthString())
fmt.Printf("lang1:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang1).ToShortMonthString())
fmt.Printf("lang1:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang1).ToWeekString())
fmt.Printf("lang1:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang1).ToShortWeekString())
resources2 := map[string]string{
"constellations": "Aries|Taurus|Gemini|Cancer|Leo|Virgo|Libra|Scorpio|Sagittarius|Capricorn|Aquarius|Pisces",
"seasons": "spring|summer|autumn|winter",
"months": "January|February|March|April|May|June|July|August|September|October|November|December",
"short_months": "Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec",
"weeks": "Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday",
"short_weeks": "Sun|Mon|Tue|Wed|Thu|Fri|Sat",
"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",
}
lang2 := carbon.NewLanguage()
lang2.SetResources(resources2)
fmt.Printf("lang2:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang2).Constellation())
fmt.Printf("lang2:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang2).Season())
fmt.Printf("lang2:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang2).DiffForHumans(carbon.Parse("2024-08-05")))
fmt.Printf("lang2:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang2).ToMonthString())
fmt.Printf("lang2:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang2).ToShortMonthString())
fmt.Printf("lang2:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang2).ToWeekString())
fmt.Printf("lang2:%s\n", carbon.Parse("2020-08-05").SetLanguage(lang2).ToShortWeekString())
Output: lang1:Leo lang1:Summer lang1:4 years before lang1:Ⅷ月 lang1:Ⅷ lang1:Wednesday lang1:Wed lang2:Leo lang2:summer lang2:4 yrs before lang2:August lang2:Aug lang2:Wednesday lang2:Wed
type LayoutType ¶ added in v2.6.0
type LayoutType[T LayoutTyper] struct { *Carbon }
LayoutType defines a LayoutType generic struct
func NewLayoutType ¶ added in v2.6.0
func NewLayoutType[T LayoutTyper](c *Carbon) *LayoutType[T]
NewLayoutType returns a new LayoutType generic instance.
func (LayoutType[T]) MarshalJSON ¶ added in v2.6.0
func (t LayoutType[T]) MarshalJSON() ([]byte, error)
MarshalJSON implements "json.Marshaler" interface for LayoutType generic struct.
Example ¶
// type W3CType string
//
// func (W3CType) Layout() string {
// return carbon.W3cLayout
// }
type User struct {
Date carbon.Date `json:"date"`
Time carbon.Time `json:"time"`
DateTime carbon.DateTime `json:"date_time"`
Customer carbon.LayoutType[W3CType] `json:"customer"`
CreatedAt *carbon.DateTime `json:"created_at"`
UpdatedAt *carbon.DateTime `json:"updated_at"`
}
c := carbon.Parse("2020-08-05 13:14:15.999999999")
user := User{
Date: *carbon.NewDate(c),
Time: *carbon.NewTime(c),
DateTime: *carbon.NewDateTime(c),
Customer: *carbon.NewLayoutType[W3CType](c),
CreatedAt: carbon.NewDateTime(c),
UpdatedAt: carbon.NewDateTime(c),
}
data, _ := json.Marshal(&user)
fmt.Printf("%s", data)
Output: {"date":"2020-08-05","time":"13:14:15","date_time":"2020-08-05 13:14:15","customer":"2020-08-05T13:14:15Z","created_at":"2020-08-05 13:14:15","updated_at":"2020-08-05 13:14:15"}
func (*LayoutType[T]) Scan ¶ added in v2.6.0
func (t *LayoutType[T]) Scan(src any) error
Scan implements "driver.Scanner" interface for LayoutType generic struct.
func (*LayoutType[T]) String ¶ added in v2.6.0
func (t *LayoutType[T]) String() string
String implements "Stringer" interface for LayoutType generic struct.
Example ¶
c := carbon.Parse("2020-08-05 13:14:15.999999999")
fmt.Println("carbon.Date:", carbon.NewDate(c).String())
fmt.Println("carbon.Time:", carbon.NewTime(c).String())
fmt.Println("carbon.DateTime:", carbon.NewDateTime(c).String())
fmt.Println("Customer:", carbon.NewLayoutType[W3CType](c).String())
Output: carbon.Date: 2020-08-05 carbon.Time: 13:14:15 carbon.DateTime: 2020-08-05 13:14:15 Customer: 2020-08-05T13:14:15Z
func (*LayoutType[T]) UnmarshalJSON ¶ added in v2.6.0
func (t *LayoutType[T]) UnmarshalJSON(src []byte) error
UnmarshalJSON implements "json.Unmarshaler" interface for LayoutType generic struct.
Example ¶
// type W3CType string
//
// func (W3CType) Layout() string {
// return carbon.W3cLayout
// }
type User struct {
Date carbon.Date `json:"date"`
Time carbon.Time `json:"time"`
DateTime carbon.DateTime `json:"date_time"`
Customer carbon.LayoutType[W3CType] `json:"customer"`
CreatedAt *carbon.DateTime `json:"created_at"`
UpdatedAt *carbon.DateTime `json:"updated_at"`
}
var user User
value := `{"date":"2020-08-05","time":"13:14:15","date_time":"2020-08-05 13:14:15","customer":"2020-08-05T13:14:15Z","created_at":"2020-08-05 13:14:15","updated_at":"2020-08-05 13:14:15"}`
_ = json.Unmarshal([]byte(value), &user)
fmt.Println("user.Date:", user.Date.String())
fmt.Println("user.Time:", user.Time.String())
fmt.Println("user.DateTime:", user.DateTime.String())
fmt.Println("user.Customer:", user.Customer.String())
fmt.Println("user.CreatedAt:", user.CreatedAt.String())
fmt.Println("user.UpdatedAt:", user.UpdatedAt.String())
Output: user.Date: 2020-08-05 user.Time: 13:14:15 user.DateTime: 2020-08-05 13:14:15 user.Customer: 2020-08-05T13:14:15Z user.CreatedAt: 2020-08-05 13:14:15 user.UpdatedAt: 2020-08-05 13:14:15
type LayoutTyper ¶ added in v2.6.4
LayoutTyper defines a LayoutTyper interface
type TimestampMicro ¶
type TimestampMicro = TimestampType[timestampMicroType]
func NewTimestampMicro ¶
func NewTimestampMicro(c *Carbon) *TimestampMicro
type TimestampMilli ¶
type TimestampMilli = TimestampType[timestampMilliType]
func NewTimestampMilli ¶
func NewTimestampMilli(c *Carbon) *TimestampMilli
type TimestampNano ¶
type TimestampNano = TimestampType[timestampNanoType]
func NewTimestampNano ¶
func NewTimestampNano(c *Carbon) *TimestampNano
type TimestampType ¶ added in v2.6.0
type TimestampType[T TimestampTyper] struct { *Carbon }
TimestampType defines a TimestampType generic struct.
func NewTimestampType ¶ added in v2.6.0
func NewTimestampType[T TimestampTyper](c *Carbon) *TimestampType[T]
NewTimestampType returns a new TimestampType generic instance.
func (*TimestampType[T]) Int64 ¶ added in v2.6.0
func (t *TimestampType[T]) Int64() (ts int64)
Int64 returns the timestamp value.
func (TimestampType[T]) MarshalJSON ¶ added in v2.6.0
func (t TimestampType[T]) MarshalJSON() ([]byte, error)
MarshalJSON implements "json.Marshaler" interface for TimestampType generic struct.
func (*TimestampType[T]) Scan ¶ added in v2.6.0
func (t *TimestampType[T]) Scan(src any) (err error)
Scan implements "driver.Scanner" interface for TimestampType generic struct.
func (*TimestampType[T]) String ¶ added in v2.6.0
func (t *TimestampType[T]) String() string
String implements "Stringer" interface for TimestampType generic struct.
func (*TimestampType[T]) UnmarshalJSON ¶ added in v2.6.0
func (t *TimestampType[T]) UnmarshalJSON(src []byte) error
UnmarshalJSON implements "json.Unmarshaler" interface for TimestampType generic struct.
type TimestampTyper ¶ added in v2.6.4
TimestampTyper defines a TimestampTyper interface.
Source Files
¶
- boundary.go
- calendar.go
- carbon.go
- comparer.go
- constants.go
- constellation.go
- creator.go
- default.go
- difference.go
- errors.go
- extremum.go
- frozen.go
- getter.go
- helper.go
- language.go
- outputer.go
- parser.go
- season.go
- setter.go
- traveler.go
- type_builtin.go
- type_carbon.go
- type_format.go
- type_interface.go
- type_layout.go
- type_timestamp.go
Directories
¶
| Path | Synopsis |
|---|---|
|
Package calendar is part of the carbon package.
|
Package calendar is part of the carbon package. |
|
julian
Package julian is part of the carbon package.
|
Package julian is part of the carbon package. |
|
lunar
Package lunar is part of the carbon package.
|
Package lunar is part of the carbon package. |
|
persian
Package persian is part of the carbon package.
|
Package persian is part of the carbon package. |
