aus einer mysql-Datenbank hole ich ein Datum und möchte dies nun in deutscher formatierung ausgeben.
Der Versuch echo date("d.m.Y",$row[3]) scheiterte
MySQL und date() speichern Daten in unterschiedlichem Format. MySQL verwendet eine lesbare Zahl, die aus den rückwärts zusammengesetzten Komponenten besteht (JahrMonatTagStundeMinuteSekunde), mit der sich allerdings nicht "normal" rechnen lässt. date() verwendet einen "unix timestamp", die Anzahl der Sekunden seit dem 1.1.1970, 0 Uhr, in Greenwhich-Zeit. Damit lässt sich zwar mit Plus und Minus rechnen, aber als Datum/Zeit erkennbar ist diese Zahl nicht.
Du kannst entweder date_format() aus der umfangreichen Bibliothek der MySQL-Zeitfunktionen benutzen, um ein Datum als Zeichenkette zu erhalten, oder Du wandelst das MySQL-Datum mit der MySQL-Funktion unix_timestamp() in eben jenes Sekundenformat um und verfütterst diese Zahl an PHPs date().
Welchen der beiden Wege Du benutzt hängt von Deiner Anwendung und Deinen persönlichen Vorlieben ab.
Gruß,
soenk.e