carbon
A simple extension for Time based on PHP's Carbon library.
Features:
Time is embedded into Carbon (provides access to all of Time's functionality)
Supports addition and subtraction of dates
Provides methods to compare dates
Supports date formatting in common formats
Easily calculate difference between dates
Ease testing with dates by using carbon.Freeze() and carbon.Now()
To do:
- Implement all localization features as in Carbon
- Improve the code style to be more idiomatic Go
Getting started
Install Carbon:
go get github.com/uniplaces/carbon
Add to your imports to start using Carbon
import "github.com/uniplaces/carbon"
Examples
A simple example to get you started:
package main
import (
"fmt"
"time"
"github.com/uniplaces/carbon"
)
func main() {
fmt.Printf("Right now is %s\n", carbon.Now().DateTimeString())
today, _ := carbon.NowInLocation("America/Vancouver")
fmt.Printf("Right now in Vancouver is %s\n", today)
fmt.Printf("Tomorrow is %s\n", carbon.Now().AddDay())
fmt.Printf("Last week is %s\n", carbon.Now().SubWeek())
nextOlympics, _ := carbon.CreateFromDate(2016, time.August, 5, "Europe/London")
nextOlympics = nextOlympics.AddYears(4)
fmt.Printf("Next olympics are in %d\n", nextOlympics.Year())
if carbon.Now().IsWeekend() {
fmt.Printf("Party time!")
}
}
You can also check the examples/
folder for more examples.