Ce qui suit est présenté par
Golang La colonne tutoriel présentera la version Go-Carbon 1.2.0 à tout le monde, j'espère qu'elle sera utile aux amis dans le besoin !
carbon est une bibliothèque de traitement du temps Golang légère, sémantique et conviviale pour les développeurs qui prend en charge les appels en chaîne et les ORM grand public tels que gorm et xrom
Si vous pensez c'est bien, s'il te plaît, donne-lui une étoile
github:github.com/golang-module/carbon
gitee:gitee.com/go-package/carbon
// 使用github库
go get -u github.com/golang-module/carbon
import (
"github.com/golang-module/carbon")
// 使用gitee库
go get -u gitee.com/go-package/carbon
import (
"gitee.com/go-package/carbon")
Copier après la connexion
Prise en charge de la base de données
Supposer que la table de données correspond aux utilisateurs et que les champs sont id(int), name(varchar), age(int),graduate_at( date), anniversaire(date), créé_à(dateheure), mis à jour_à(dateheure), supprimé_à(dateheure)
type UserModel struct {
ID int64 `json:"id"` Name string `json:"name"` Age int `json:"age"` Birthday carbon.Carbon `json:"birthday"` CreatedAt carbon.ToDateTimeString `json:"created_at"` DeletedAt carbon.ToTimestamp `json:"deleted_at"` GraduatedAt carbon.ToDateString `json:"graduated_at"` UpdatedAt carbon.ToTimeString `json:"updated_at"`}
Copier après la connexion
Instancier le modèle
user := UserModel {
Name: "勾国印", Age: 18, Birthday: carbon.Now().SubYears(18), CreatedAt: carbon.ToDateTimeString{carbon.Now()}, DeletedAt: carbon.ToTimestamp{carbon.Parse("2020-08-05 13:14:15")}, GraduatedAt: carbon.ToDateString{carbon.Parse("2012-09-09")}, UpdatedAt: carbon.ToTimeString{carbon.Now()},}
Copier après la connexion
user.ID // 18
user.Name // 勾国印
user.Birthday.ToDateString() // 2012-08-05
user.CreatedAt.ToTimestamp() // 2012-08-05 13:14:15
user.DeletedAt.ToDateTimeString() // 1596604455
user.GraduatedAt.AddDay().ToDateString() // 2012-09-10
user.UpdatedAt.ToDateString() // 2012-08-05
Copier après la connexion
Modèle de sortie JSON
data, _ := json.Marshal(&user)
fmt.Print(string(data))
// 输出
{
"id": 42, "name": "勾国印", "age": 18, "birthday": "2012-08-05 00:00:00", "created_at": "2020-08-05 13:14:15", "deleted_at": 1596604455 "graduated_at": "2012-09-09", "updated_at": "13:14:15",}
Copier après la connexion
Journal de mise à jour
Tests unitaires parfaits, couverture de code à 100 %-
Parfaire et optimiser la prise en charge multi-scénarios pour ORM- Nouvelle version anglaise de la documentation README.MD
- Unifier la gestion des exceptions
- Unifier les règles de dénomination des fonctions de sortie, Format() modifié à ToFormatString()
- Ajout de la méthode CreateFromGoTime(t time.Time) pour créer une instance Carbon à partir de l'heure native.Time
- Optimiser la structure de l'organisation du code et unifier les méthodes finales non héritables Mettez-le dans la version finale Fichier .go
- Abandonnez la fonction d'initialisation New() et utilisez-la directement sans initialisation
- Ajoutez plusieurs sorties au format d'heure, telles que Cookie, W3C, RSS, RFC7231
- Ajouté nouvelle méthode ParseByDuration() pour analyser la chaîne de durée (par rapport à aujourd'hui), prenant en charge les nombres et symboles entiers positifs et négatifs/à virgule flottante ns (nanosecondes), us (microsecondes), ms (millisecondes), s (secondes), combinaison de m ( minutes), h (heures)
- Ajout des méthodes NextYears(), NextYear(), PreYears(), PreYear() pour éviter le phénomène de croisement de mois lors de l'ajout/soustraction d'une année spécifiée
- Ajout des méthodes NextMonths(), NextMonth(), PreMonths() et PreMonth() pour éviter le phénomène de croisement de mois après l'ajout/soustraction du mois spécifié
- Ajout de la méthode DaysInYear() pour obtenir ce nombre total de jours dans l'année
- Ajoutez la méthode DaysInMonth() pour obtenir le nombre total de jours dans ce mois
- Ajoutez la méthode MonthOfYear() pour obtenir le mois de l'année
- Ajoutez la méthode DayOfYear() pour obtenir le jour de l'année
- Ajoutez la méthode DayOfMonth() pour obtenir le jour du mois
- Ajoutez la méthode DayOfWeek() pour obtenir le jour de la semaine
- Ajout de la méthode WeekOfYear() pour obtenir la semaine de l'année
- Ajout de la méthode WeekOfMonth() pour obtenir la semaine du mois
- Ajout de la méthode IsZero() pour déterminer s'il s'agit d'un temps de valeur nulle
- Ajout de la méthode IsFuture() pour déterminer s'il s'agit d'une heure future
- Ajout de la méthode IsPast() pour déterminer si c'est une heure passée
- Ajout de la méthode IsNow() Déterminer si c'est l'heure actuelle
-
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!