Ich habe ein Problem mit der formatierten Ausgabe von Texten: Ein vorgegebener Text soll vor der Ausgabe des nächsten Textteils mit Leerzeichen auf 22 Stellen aufgefüllt werden:
$ausgabe .= sprintf("%-22.22s", $name).$vorname;
Der Befehl funktioniert wunderbar, solange keine Umlaute in der Variable $name enthalten sind: Je Umlaut entfällt ein Leerzeichen, oder anders ausgedrückt: Ein Umlaut scheint als 2 Zeichen gezählt zu werden.
Die Daten in $name stammen aus einer mySQL-Datenbank und werden in eine Textdatei geschrieben. Zeichenformat sowohl der Datenbank als auch der Datei ist UTF-8:
header(„Content-type: application/text;charset=utf-8“);
Ist eine formatierte Ausgabe möglich?