Fügen Sie sechs Monate in PHP hinzu

7

Ich versuche den Monat zu bekommen, sechs Monate nach dem aktuellen Datum.

Ich habe versucht mit:

date('d', strtotime('+6 month', time()));

Aber es scheint nicht zu funktionieren, gibt immer 01 zurück. Gibt es einen besseren Weg, dies zu tun?

Danke!

    
dzm 20.12.2012, 16:51
quelle

5 Antworten

18

Ich finde die Arbeit mit DateTime viel einfacher zu benutzen:

%Vor%

oder

%Vor%

oder in PHP Version 5.4 +

%Vor%     
John Conde 20.12.2012, 16:52
quelle
2

Wenn Sie im Gegensatz zu einem DateTime () - Objekt weiterhin strtotime und die date-Funktion verwenden wollten, würde Folgendes funktionieren:

%Vor%     
Dan Greaves 20.12.2012 16:54
quelle
1

Sie können die Klasse DateTime in Verbindung mit der Klasse DateInterval verwenden:

%Vor%     
Martin Bean 20.12.2012 16:57
quelle
0

Sie müssen time() nicht an strtotime übergeben, da dies der Standardwert ist.

Abgesehen davon ist Ihre Herangehensweise korrekt - außer dass Sie date('d') (die den Tag ausgibt) und nicht date('m') für den Monat verwenden, also sollte echo date('m', strtotime('+6 month')); genügen.

Trotzdem würde ich empfehlen, den DateTime way zu verwenden, den John angegeben hat. DateTime hat mehrere Vorteile gegenüber den "alten" Datumsfunktionen, zum Beispiel hören sie nicht auf zu arbeiten, wenn die Sekunden seit dem UNIX-Urknall nicht mehr in eine 32-Bit-Ganzzahl passen.

    
David Müller 20.12.2012 16:55
quelle
0

Sie können die simpleDate-Klasse verwenden:

%Vor%

Lesen Sie die Anleitungen hier

    
isa 11.03.2014 16:23
quelle

Tags und Links