Obtenir le dernier jour d'un mois avec l'heure de Go.Time
Le type time.Time dans Go représente un instant dans le temps avec une nanoseconde précision. Cependant, déterminer le dernier jour d'un mois peut être délicat, en particulier lorsqu'il s'agit d'années bissextiles ou de mois de durée variable.
Formulation du problème :
Étant donné une heure. Instance de temps représentant une date spécifique, nous souhaitons obtenir une nouvelle heure. Instance de temps qui représente le dernier jour de ce mois. Par exemple, étant donné le 29 janvier, nous devons calculer le 31 janvier.
Solution Utilisation de time.Date :
La fonction time.Date fournit un moyen de construire une heure Instance .Time avec des valeurs spécifiques d’année, de mois, de jour, d’heure, de minute, de seconde et de nanoseconde. Nous pouvons utiliser cette fonction pour créer une nouvelle instance time.Time représentant le dernier jour d'un mois.
Pour ce faire, nous extrayons d'abord l'année, le mois et le jour de l'instance time.Time donnée. Ensuite, nous créons une nouvelle instance time.Time avec la même année et le même mois, mais définissons le jour sur 0. Cette heure représente le premier jour du mois suivant. Enfin, nous soustrayons un jour de cette heure en utilisant la méthode AddDate pour obtenir le dernier jour du mois d'origine.
Exemple :
Le code Go suivant montre comment utilisez time.Date pour obtenir le dernier jour d'un mois :
package main import ( "fmt" "time" ) func main() { // Parse a date into a time.Time instance t, _ := time.Parse("2006-01-02", "2016-01-29") // Extract year, month, and day from the time y, m, _ := t.Date() // Create a time representing the first day of the next month nextMonthFirst := time.Date(y, m+1, 1, 0, 0, 0, 0, time.UTC) // Subtract one day to get the last day of the original month lastDay := nextMonthFirst.AddDate(0, 0, -1) // Print the last day fmt.Println(lastDay.Format("2006-01-02")) }
Ce code affiche :
2016-01-31
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!