Carbone - pourquoi addMonths() change le jour du mois?
Voici l'exemple simple (c'est aujourd'hui 2016-08-29):
var_dump(Carbon::now());
var_dump(Carbon::now()->addMonths(6));
De sortie:
object(Carbon\Carbon)#303 (3) {
["date"] => string(26) "2016-08-29 15:37:11.000000"
}
object(Carbon\Carbon)#303 (3) {
["date"] => string(26) "2017-03-01 15:37:11.000000"
}
Pour Carbon::now()->addMonths(6)
j'attends 2017-02-29
, pas 2017-03-01
.
Ai-je raté quelque chose au sujet de la date des modifications?
2017-02-29 n'existe pas :-).
OriginalL'auteur Limon Monte | 2016-08-29
Vous devez vous connecter pour publier un commentaire.
Il n'y a pas de 2/29/2017. L'année bissextile qui s'est passé en 2016.
Le lien suivant:
http://carbon.nesbot.com/docs/#api-addsub
fournit un exemple d'ajout de 1 mois à 1/31/2012 et arrivant sur 3/3/2012. Ce qui est prévu, bien que cela semble confus pour moi.
Comme un contre-exemple présentant un comportement différent, en SQL:
résultats dans 2/29/2012, de sorte qu'il serait une bonne idée de vérifier les spécifications de ce addmonth() fonction que vous envisagez d'utiliser.
OriginalL'auteur RIanGillis
C'est encore plus paralysé que celle - soustraction a les mêmes problèmes. Il existe des méthodes pour éviter les débordements, mais:
de sortie:
OriginalL'auteur Alexander Malakhov