Umlaute mit strtoupper() gehen nicht

Das tolle an php ist ja eigentlich seine Einfachheit…aber manchmal könnte ich es an die Wand klatschen.

Folgender Quellcode bringt kein großes „Ä“:

echo strtoupper('ä');

Folgender Quellcode hingegen schon:

$s = strtoupper('ä');
$s  = strtr($s, array(
	'ä' => 'Ä',
	'ö' => 'Ö',
	'ü' => 'Ü',
));
echo $s;

Tja, das kann schon echt nervig sein.

2 Gedanken zu „Umlaute mit strtoupper() gehen nicht

  1. Nicht vergessen die passende Locale zu setzen:

    deegital:~ # php -r „setlocale(LC_CTYPE, ‚de_DE‘); echo strtoupper(‚bääämm‘);“
    BÄÄÄMM

    lg aus Elmshorn

  2. Nunja, warum einfach wenn es auch kompliziert geht….

    Sonst einfach mb_strtoupper() verwenden 😉

Kommentare sind geschlossen.