14.6. Wie kann ich die Datumsausgabe auf Deutsch umstellen?Antwort von Johannes FrömterMit der Funktion setlocale() kann man diverse Länder- und sprachabhängigen Einstellungen vornehmen. Die Sprache wird im Format Sprache_Land bzw. Sprache_Land.Codepage angegeben und ist plattformabhängig; unter Unix/Linux sind zweibuchstabige Länderabkürzungen zu verwenden, also z.B. de_DE für Deutsch/Deutschland oder de_AT für Deutsch/Österreich, Windows dagegen erwartet German_Germany bzw. German_Austria. Die Einstellung für die Kategorie LC_TIME wirkt sich nur auf die Ausgabe von strftime() , nicht jedoch auf date() aus. <?php // Default echo strftime('%A, %d. %B %Y', 1009926000); // Ausgabe: Wednesday, 02. January 2002 Linux: setlocale(LC_TIME, 'de_DE'); *BSD: setlocale(LC_TIME, 'de_DE.ISO_8859-1'); Win: setlocale(LC_TIME, 'German_Germany'); echo strftime('%A, %d. %B %Y', 1009926000); // Ausgabe: Mittwoch, 02. Januar 2002 Linux: setlocale(LC_TIME, 'de_AT'); *BSD: setlocale(LC_TIME, 'de_AT.ISO_8859-1'); Win: setlocale(LC_TIME, 'German_Austria'); echo strftime('%A, %d. %B %Y', 1009926000); // Ausgabe: Mittwoch, 02. Jänner 2002 ?> Um zu testen, ob ein bestimmter locale-String auf einem System unterstützt wird, kann man den Rückgabewert von setlocale() auswerten: if (setlocale(...) === false) // dann hat's nicht funktioniert Warnung: setlocale() ist nicht thread-safe, d.h. die Einstellungen wirken sich in Multithread-Umgebungen u.U. auch auf andere, parallel laufende Scripte aus! |
||
14.6. Wie kann ich die Datumsausgabe auf Deutsch umstellen? http://www.php-faq.de/q/q-datum-deutsch.html |
||
Archiv der de.comp.lang.php-FAQ Dies ist eine Archivseite von 2008 und wurde seitdem nicht geändert. Das dclp-FAQ-Team |