2012-05-29 4 views
19

Ich versuche, die Datumsfunktion von PHP zu verwenden, um das Datum von 7 Tagen früher im YYYY-MM-DD Format zu erhalten.PHP Datum Funktion Sieben Tage vorher

date('Y-m-d'); 

wenn ich versuche,

date('Y-m-d-7'); 

Ich erhalte einen Fehler

+0

Verwendung 'date ('Ym-d', StrToDate ('- 7 Tage))' – Gavin

+0

@Gavin Anruf zu undefinierte Funktion strtodate() –

+2

Die Funktion ist ['strtotime'] (http://uk3.php.net/manual/en/function.strtotime.php). – lonesomeday

Antwort

62

Verwenden Sie die von PHP bereitgestellte Methode strtotime.

date('Y-m-d', strtotime('-7 days'))

Dank für den Hinweis auf meinen Fehler in den Kommentaren @lonesomeday;)

+0

Wie bekommst du es mit den Stunden Minuten und Sekunden auch ... Ich kann das nicht mit 'Ymd H: i: s' – Matthew

+0

hey @Matthew - das folgende funktionierte gut für mich 'Echo Datum (' Ymd H: i: s ', strtotime (' - 7 Tage '); 'zurückkehrend' 2017-01-02 08: 37: 51' - was hast du bekommen? – Gavin

+0

Gavin, danke, ich habe es funktioniert. Ich weiß nicht, was ich falsch gemacht habe, ich kann mich nicht einmal erinnern. Ich weiß es zu schätzen, dass Sie es bestätigt haben. Vielen Dank. – Matthew

19

Mit diesem wie bei alle PHP date stuff, es schöner ist die DateTime Klasse zu verwenden.

$date = new DateTime('7 days ago'); 
echo $date->format('Y-m-d'); 
+0

gibt es irgendeine Weise, die ich es nicht in einer Linie tue? da ich es in eine Abfrage einfügen –

+0

Also in welche Abfrage Sie es einfügen? SQL? – iiro

+0

nein. Rufen Sie das Google Analytics-API auf –

Verwandte Themen