00 Stimmen

PHP: Umlaute und strtoupper

Frage von Chematik | 11.12.2011 um 19:43

Ich habe einen String in PHP und möchte diesen String in Großbuchstaben verwandeln. Ich benutze folgenden Code dafür:

$str = 'abc äöü';
echo strtoupper($str);
//Ausgabe: ABC äöü

Nun gibt es aber ein Problem. Ich erwarte die Ausgabe "ABC ÄÖÜ", es wird mir aber "ABC äöü" ausgegeben. Offenbar funktioniert strtoupper() nicht mit den deutsche Umlauten. Was kann man da machen?!

AntwortenPositivNegativ
11 Stimme

Welche Buchstaben strtoupper() tatsächlich in Großbuchstaben umwandelt, hängt von der lokalen Einstellung ab. Wenn du auf Nummer sicher gehen willst (die Einstellungen kann man üblicherweise auf seinem Webspace sowieso nicht ändern), verwende folgende Funktion:

$str = 'abc äöü';
echo mb_strtoupper($str,'UTF-8');
//Ausgabe: ABC ÄÖÜ

Mit mb_strtoupper() kannst du alle Unicode Zeichen wie auch die Umlaute in Großbuchstaben verwandeln. Als Parameter musst du den String und die verwendete Kodierung angeben. Die Kodierung hängt von der Kodierung ab, die du auf deiner Seite verwendest, in der Regel sollte die Kodierung UTF-8 sein.
13.12.2011 um 20:38

AntwortenPositiv Negativ
Antworten

Ähnliche Themen

PHP: Upload großer Dateien

Tutorial | 0 Kommentare

PHP: Eine E-Mail versenden

Tutorial | 0 Kommentare

Wichtiger Hinweis

Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.