diwaffm

Setlocale unter Windows - Warum Monatsname in englisch?

geschlossengelöstFragePHPEntwicklung
Hi Leute,

auf einem IIS mit PHP5 erhalte ich mit

$loc_de = setlocale(LC_ALL, 'deu_deu');  
$nMonat=date("m");  
$cMonat=date("F");  
echo "$nMonat - $cMonat <br>";  
echo "strftime nach setlocale ist " . strftime("%c") . "<br><br>";  
echo "Die momentane Ländereinstellung ist " . $loc_de;  

die folgende Ausgabe:

03 - March
strftime nach setlocale ist 16.03.2010 17:27:48

Die momentane Ländereinstellung ist German_Germany.1252


Die Einstellung von Deutsch hat anscheinend funktioniert - warum wird der Monat aber in englisch ausgegeben?
Bei Wochentagen tritt das Problem auch auf.

ciao

dirk
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 138397

Url: https://administrator.de/forum/setlocale-unter-windows-warum-monatsname-in-englisch-138397.html

Ausgedruckt am: 22.05.2025 um 18:05 Uhr

Dani
Dani 16.03.2010 um 20:45:17 Uhr
Goto Top
Moin,
in welcher Sprache ist denn Server installiert und welches OS läuft drauf und was hast du eigentlich vor bzw. welchen Sinn macht es das Datum von der Sprache des Servers abhängig zu machen in deinem Fall?


Grüße,
Dani
dog
dog 16.03.2010 um 20:49:05 Uhr
Goto Top
http://www.php.net/manual/en/function.strftime.php
Month and weekday names and other language-dependent strings respect the current locale set with setlocale().
diwaffm
diwaffm 16.03.2010 um 22:25:03 Uhr
Goto Top
Zitat von @dog:
http://www.php.net/manual/en/function.strftime.php
> Month and weekday names and other language-dependent strings respect the current locale set with setlocale().

Ja, das kannte ich bisher auch so...

Deswegen wundert es mich ja auch, dass zwar Deutsch als Ländereinstellung ausgegeben wird, die Monats- und Wochentagsnamen aber nach wie vor Englisch sind.

Wahrscheinlich muss man dem IIS das noch anders mitteilen...

ciao

dirk
dog
dog 16.03.2010 um 22:29:10 Uhr
Goto Top
Weil du date() benutzt und nicht strftime() und es dort explizit erwähnt ist...
diwaffm
diwaffm 17.03.2010 um 15:47:42 Uhr
Goto Top
Aua...
Ich habe einfach den Code für den Apache-Server auf den IIS kopiert.
Dort funktioniert das auch bei date()

Danke

Dirk