phpbar.de logo

Mailinglisten-Archive

[php] deutsches Datum

[php] deutsches Datum

Roland Braband r.braband at web.de
Mit Nov 9 23:40:19 CET 2005


Hallo,

lange nicht mehr auf der Liste gewesen.
Ich habe folgendes Problem/Frage:
um ein dt. Datum zu erhalten kann man ja (sofern der Provider es zuläßt)

setlocale (LC_ALL, 'de_DE at euro', 'de_DE', 'de', 'ge');

verwenden, wenn aber nicht... ich habe das wie folgt gelöst:

function german_date($date) {
    $pattern = unserialize('a:38:{i:0;s:10:"/January/i";i:1;s:6:"/Jan/i";
i:2;s:11:"/February/i";i:3;s:6:"/Feb/i";i:4;s:8:"/March/i";i:5;s:6:"/Mar/i";
i:6;s:8:"/April/i";i:7;s:6:"/Apr/i";i:8;s:6:"/May/i";i:9;s:6:"/May/i";
i:10;s:7:"/June/i";i:11;s:6:"/Jun/i";i:12;s:7:"/July/i";i:13;s:6:"/Jul/i";
i:14;s:9:"/August/i";i:15;s:6:"/Aug/i";i:16;s:12:"/September/i";
i:17;s:7:"/Sept/i";i:18;s:10:"/October/i";i:19;s:6:"/Oct/i";i:20;s:11:"/Nove
mber/i";
i:21;s:6:"/Nov/i";i:22;s:11:"/December/i";i:23;s:6:"/Dec/i";i:24;s:9:"/Monda
y/i";
i:25;s:6:"/Mon/i";i:26;s:10:"/Tuesday/i";i:27;s:6:"/Tue/i";i:28;s:12:"/Wedne
sday/i";
i:29;s:6:"/Wed/i";i:30;s:11:"/Thursday/i";i:31;s:6:"/Thu/i";i:32;s:9:"/Frida
y/i";
i:33;s:9:"/Fri|Fr/i";i:34;s:11:"/Saturday/i";i:35;s:6:"/Sat/i";i:36;s:9:"/Su
nday/i";i:37;s:6:"/Sun/i";}');
    $replace =
unserialize('a:38:{i:0;s:6:"Januar";i:1;s:3:"Jan";i:2;s:7:"Februar";
i:3;s:3:"Feb";i:4;s:9:"März";i:5;s:3:"Mrz";i:6;s:5:"April";i:7;s:3:"Apr
";
i:8;s:3:"Mai";i:9;s:3:"Mai";i:10;s:4:"Juni";i:11;s:3:"Jun";i:12;s:4:"Juli";i
:13;s:3:"Jul";
i:14;s:6:"August";i:15;s:3:"Aug";i:16;s:10:"Septtember";i:17;s:3:"Sep";i:18;
s:7:"Oktober";
i:19;s:3:"Okt";i:20;s:8:"November";i:21;s:3:"Nov";i:22;s:8:"Dezember";i:23;s
:3:"Dez";
i:24;s:7:"Monntag";i:25;s:2:"Mo";i:26;s:8:"Dienstag";i:27;s:2:"Di";i:28;s:8:
"Mittwoch";
i:29;s:2:"Mi";i:30;s:10:"Donnerstag";i:31;s:2:"Do";i:32;s:7:"Freitag";i:33;s
:2:"Fr";
i:34;s:7:"Samstag";i:35;s:2:"Sa";i:36;s:7:"Sonntag";i:37;s:2:"So";}');
    return preg_replace($pattern, $replace, $date, 1);
}
Beispiel:
echo german_date(strftime( '%B %Y', $timestamp));

Das funktioniert wunderbar :)
Allerdings habe ich seltsame Änderungen vornehmen müssen:
Septtember => statt September
Monntag => statt Montag

Die Frage ist warum funktioniert das, oder ist das ein
Konfiguration Problem?

Gruss,

Roland Braband


php::bar PHP Wiki   -   Listenarchive