phpbar.de logo

Mailinglisten-Archive

AW: [php] Datumsumwandlung: Mal korrekt, mal 01.01.1970

AW: [php] Datumsumwandlung: Mal korrekt, mal 01.01.1970

Wolfgang Hauck php_(at)_phpcenter.de
Thu, 23 May 2002 12:36:04 +0200


>In einer MySQL-Tabelle ist ein Feld "datetime". Dieses wird durch eine
>eigene Funktion GetNiceDate() in zB. "Saturday, 18 May 2002" (bzw.
>"Sa, 18. Mai 2002" wenn jemand deutsch als Sprache gewaehlt hat)
>uebersetzt. Manchmal kommt es allerdings vor, dass statt des korrekten
>Datums der 1. Jan. 1970 ausgegeben wird.

>Kann sich jemand erklaeren, wie es passieren kann, dass der gleiche
>Inhalt "2002-05-18 22:30:00" haeufig korrekt aber manchmal auch falsch
>zurueckgegeben wird?

>Hier ein Ausschnitt aus der Funktion:

....
>   $strNiceDate = date("l, d. M Y",
          mktime($hour,$minute,$second,$month,$day,$year));


Hi Andreas,

mktime wird über die UNIX-Epoche (Januar 1 1970 00:00:00 GMT) bis jetzt
vergangenen Sekunden berechnet. Wird ein älteres oder ungültiges Datum
übergeben, wird der 1. Jan. 1970 ausgegeben. Schau einfach nach, was du
dieser Funktion übergibst.
(in der Zukunft ist so bei 2034 ? Schluss)

MFG Wolfgang


php::bar PHP Wiki   -   Listenarchive