1. 程式人生 > 其它 >go-carbon 1.3.0 版本釋出,新增 XXXNoOverflow() 系列方法

go-carbon 1.3.0 版本釋出,新增 XXXNoOverflow() 系列方法

新春現金紅包與免費Linux基金會培訓&認證,等你來領!>>> watermark,image_bG9nby9jc2RuXzEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLGhfMg==,g_se,x_0,y_0,t_100

carbon 是一個輕量級、語義化、對開發者友好的Golang時間處理庫,支援鏈式呼叫、農曆和gorm、xorm等主流orm

如果您覺得不錯,請給個 star 吧
github:github.com/golang-module/carbon
gitee:gitee.com/go-package/carbon

更新日誌

  • 新增AddXXXNoOverflow()和SubXXXNoOverflow()系列方法處理月份溢位問題
  • 新增ParseByLayout()方法,將佈局時間字串解析成 Carbon 例項
  • CreateFromGoTime()更名為Time2Carbon(),作用是將 time.Time 轉換成 Carbon
  • ToGoTime()更名為Carbon2Time(),作用是將 Carbon 轉換成 time.Time
  • 優化Format()方法,增加對\\符號支援,表示原樣輸出不解析
  • 優化Format()方法,增加對S符號的支援,表示月份中的第幾天,英文縮寫字尾,如st、nd、rd、th,一般和j配合使用
  • 優化解析異常時的錯誤文案
  • 優化精簡兩個時間大小判斷邏輯程式碼
    // 一年後
    carbon.Parse("2020-02-29 13:14:15").AddYear().ToDateTimeString() // 2021-03-01 13:14:15
    // 一年後(月份不溢位)
    carbon.Parse("2020-02-29 13:14:15").AddYearNoOverflow().ToDateTimeString() // 2021-02-28 13:14:15
    
    // 原樣輸出不解析
    carbon.Parse("2020-08-05 13:14:15").Format("l jS \\o\\f F Y h:i:s A") // Wednesday 5th of August 2020 01:14:15 PM
    
    // 將佈局時間字串解析成 Carbon 例項
    carbon.ParseByLayout("It is 2020-08-05 13:14:15", "It is 2006-01-02 15:04:05").ToDateTimeString // 2020-08-05 13:14:15
    
    // 將 time.Time 轉換成 Carbon
    carbon.Time2Carbon(time.Now())
    // 將 Carbon 轉換成 time.Time
    carbon.Now().Carbon2Time() 或 carbon.Now().Time