Gero Takke: SammelThread - PHP-Funktionen

Beitrag lesen

Hallo Sabine,

Wie sieht denn deine Lösung dafür aus??

Gar nicht so unterschiedlich zu Deiner zuerst geposteten Version. Ich habe die Tage (und Monate) halt in mehreren Sprachen und in mehreren Zeichensätzen.

Ich hätte gerne eine "German-Date"-Funktion der ich wie bei der bekannten date()-Funktion Schlüsselparameter übergeben kann um so mein gewünschtes Format zu erhalten. Dabei soll es aber egal sein ob das eine TimeStamp ist oder das DEUTSCHE Datumsformat TT.MM.JJ(JJ).

date_de("l mitten im F", "18.06.08");
// Soll anzeigen: Mittwoch mitten im Juni

Ich bin ja laufend nur am meckern, aber ich glaube nicht, dass das eine gute Idee ist. Beim ersten Parameter hast Du nicht nur programmiertechnisch  das Problem mit str_replace() – vielmehr ist das ein logisches Problem. Es gibt keine Chance, weder für das Programm, noch für den Programmierer, zu wissen, ob das Zeichen als literales Zeichen oder als aufzulösender Platzhalter interpretiert werden soll. Deswegen verwendet strftime() (http://php.net/manual/en/function.strftime.php) zum Auszeichnen der Platzhalter das Prozentzeichen.
Ausserdem halte ich auch die Idee mit dem deutschen Datumsformat für mittelmäßig – ich würde alles so schnell es geht in einen Timestamp umwandeln. Auf gar keinen Fall würde ich anfangen, mit Stringrepräsentationen von Daten zu „rechnen“.
Für die Lesbarkeit im Code kannst Du Dir ja eine date_de2timestamp()-Funktion machen – wobei ich ja finde, dass das deutsche Datumsformat ganz schön unsinnig ist. YYYY-MM-DD finde ich viel schlauer (erst die grobe Einteilung, dann die feinere)

Viele Grüße,
Gero