[gelöst]aktuelles Datum ausgeben -März macht Probleme

am 01.03.2011 - 21:03 Uhr in
Liebe Drupalfreunde
Ich habe auf meiner Drupal -Seite in einem Block das aktuelle Datum ausgegeben:
<?php
setlocale(LC_TIME, 'de_DE');
print strftime('%d. %B %G');
?>
Das funktioniert auch prima bis heute. Der März macht Probleme.
Es wird M?rz angezeigt.
Sonst überall auf der Seite macht es keine Probleme mit ä,ö,ü.
Quelltext sieht auch gut aus:
Weiss jemand Rat?
vielen Dank!
Liebe Grüsse Karolina
- Anmelden oder Registrieren um Kommentare zu schreiben
Vielleicht ist die
am 01.03.2011 - 21:50 Uhr
Vielleicht ist die Übersetzung von March nicht UTF8 codiert. Also einfach in der Übersetzung nach März suchen und neu eingeben.
Beste Grüße
Werner
Vielen Dank für die Antwort!
am 01.03.2011 - 22:30 Uhr
Habe ich grad versucht. Wenn ich nach March suche, stimmen die Übersetzungen.
Wenn ich eine story schreibe, wird das "submitted" als März (nicht M?rz) ausgegeben.
Hat der Code, den ich in den Block schreibe überhaupt was mit der Oberflächenübersetztung zu tun?
Falls jemand Rat weiss, ich freue mich!
Liebe Grüsse Karolina!
Der dürfte eigentlich nichts
am 01.03.2011 - 22:51 Uhr
Der dürfte eigentlich nichts mit der Oberflächenübersetzung zu tun haben, da er auf die Servervariablen zugreift.
Wo hast du denn den PHP-Code eingefügt? Mittels PHP-Eingabeformat im Inhalt des Blockes oder als Template-Datei (block--xxx.tpl.php) im Theme-Ordner? Bei letzterem die Datei als UTF-8 (ohne BOM) kodiert abspeichern. Bei ersterem sollte das Problem nicht auftreten.
Danke für die Antwort!
am 01.03.2011 - 22:56 Uhr
Ich habe den Code direkt mittels PHP-Eingabeformat im Inhalt des Blockes eingefügt.
Komisch..?
Liebe Grüsse Karolina
Je nach Servereinstellung
am 01.03.2011 - 23:21 Uhr
Je nach Servereinstellung könnte es helfen das
<?php
setlocale(LC_TIME, 'de_DE');
?>
<?php
setlocale(LC_TIME, 'de_DE.UTF-8');
?>
Wenn das nicht zur Lösung führt, kannst du versuchen bei der Ausgabe entweder noch ein utf8_encode() oder utf8_decode anzuwenden, je nachdem wie die Daten in der Datenbank vorliegen.
<?php
print utf8_decode(strftime('%d. %B %G'));
?>
Es hat geklappt!
am 01.03.2011 - 23:35 Uhr
Danke Zman!
Die erste Lösung mit :
<?php
setlocale(LC_TIME, 'de_DE.UTF-8');
?>
hat geklappt! Ich bin so froh!
Liebe Grüsse Karolina