echo $begrüßung;
Das Ergebnis packe ic in ein Array und dieses möchte alphabetisch sortieren. Problem ist allerdings, dass bei Sortieren nach Groß und Kleinbuchstaben unterschieden wird (also wenn ein Name mit kleinem a anfängt wird der ans Ende der Liste geschrieben) und auch die Sonderzeichen Ä Ü Ö È etc. nicht bei den jeweiligen Buchstaben stehen, sondern als eigene Buchstaben am Ende der Liste aufgeführt werden.
Die Sortierung erfolgt "ASCII-betisch". Wenn du eine Sortierung gemäß den Regeln einer spezifischen Sprache haben möchtest, müssen die Zeichen entsprechend ihrer Bedeutung und nicht nach ihrem Bytewert verglichen werden.
Welche Parameter muß ich angeben, damit das richtig sortiert wird?
ksort($ausgabe);
ksort() sortiert nur "ASCII-betisch". Du kannst eine Sortierfunktion mit benutzerdefinierter Vergleichsfunktion (u*sort) zum Sortieren und strcoll() zum Vergleichen verwenden. Auch brauchst du ein passend eingestellte "locale information" (setlocale()).
echo "$verabschiedung $name";