2010-12-28 13 views
3

Ich habe derzeit das seltsamste Problem. Ich habe den folgenden PHP-Code, der den aktuellen Tag und das Datum wiedergeben sollte, aber es gibt mir "Mon, Dec 12, 2010" egal welcher Tag es ist.Stuck PHP Datum() zeigt gleichen Tag/Uhrzeit

<?php echo date('D, M n, Y'); ?> 

wenn ich

laufen
<?php echo date(); ?> 

Es gibt nichts zurück.

Ich benutze PHP Version 5.2.13 über fastcgi auf lighttpd (verwaltet von Kloxo). Meine Zeitzone ist korrekt auf dem Server (CentOS 5.5) eingestellt.

Ich weiß nicht, ob das ein Serverproblem oder ein php.ini Problem ist, also poste ich hier. Bitte verschieben Sie wenn nötig.

+2

Run 'date' in einem Terminal zu sehen, ob die Systemuhr richtig eingestellt ist. – marcog

+1

Ist Ihre Webseite vielleicht zwischengespeichert? – Orbling

+0

Wenn ich (Beispiel von php.net) gibt es Montag, den 27. Dezember 2010 um 07:04:44 Uhr, die zum Zeitpunkt dieses Schreibens die genaue Zeit ist. – jonkratz

Antwort

3

'D, M n, Y' bedeutet „Textdarstellung des Tages, kurze Textdarstellung des Monats, numerische Darstellung des Monats, Jahr“. Also, ja, Dezember ist der zwölfte Monat, daher wird 'n' 12. Dezember sein. :)

http://php.net/manual/en/function.date.php

+0

Wirklich? Ja, du hast recht! OK, ich fühle mich jetzt wirklich dumm! Dies ist nicht mein erster Tag Programmierung PHP, wirklich! – jonkratz

+0

+1 Schöner Fang. Hab das nicht bemerkt. – thirtydot

+0

@Jon * Psst, schuld es in den Ferien! Wink Wink, Nudge Nudge ... * – deceze

0

date() benötigt mindestens einen Parameter. siehe das Dokument http://php.net/manual/en/function.date.php. In Ihrer php.ini ist ein Fehler bei der Ausgabe aufgetreten. Überprüfen Sie Ihr Protokoll - es ist tatsächlich ein Fehler

+0

Nicht relevant für das eigentliche Problem, aber: PHP 5.3.1/Windows: 'Warnung: date() erwartet mindestens 1 Parameter, 0 gegeben '. – thirtydot

+0

Ja, ich habe diesen Fehler bekommen. Danke für die Köpfe Seth. – jonkratz

1
$time = 1293501872; 
echo date('D, M n, Y', $time); 

echo date("Y.m.d H:i:s", $_SERVER['REQUEST_TIME']); 

Überprüfen Sie, welches Datum es zurückgibt. Echozeit() nicht Datum().

+0

@marcog, Mein Fehler, das habe ich nicht beabsichtigt. –

+0

Zurückgegeben am 12. Dezember 2010 für den ersten; 2010.12.27 19:23:23 für den zweiten; und alles Echo Zeit() zurückgegeben nur 1293499403. – jonkratz

+0

Alles ist in Ordnung. –