Tach!
Deine Fragen hab ich alle beantwortet.
Nein, du hast ein anderes Thema angeschitten, das nicht direkt Gegenstand der Aufgabenstellung war.
Wie ich das machen würde, zeigt mein Tool und hier ist eine entsprechende Library, die Du auch gerne erweitern kannst.
Das zeigt lediglich wie du die Codepoints aus UTF-8-kodierten Zeichen ermittelst. Die Frage, wie man Steuerzeichen in der Eingabe erkennt, beantwortet das jedoch noch nicht.
Somit kann dem Benutzer ganz konkret hingewiesen werden, an welcher Stelle er ein unerwünschtes Zeichen eingegeben hat und welches Zeichen das ist.
Nein, kann man noch nicht, weil die Prüfung auf "unerwünscht" nicht in dem Tool enthalten ist.
Im Übrigen legt das Unicode-Konsortium auch Namen für Zeichen fest, bei einer Fehlermeldung würde ich auch den Namen ausgeben.
Und nun? Diese Namen ermittelt dein Tool nicht.
Mit einer Zeile preg_match() kriegst Du solch Komfort nicht hin.
Den Komfort kann man vielleicht hinzufügen, wenn die grundlegend gewünschte Funktionalität vorhanden ist. Die war, Steuerzeichen zu erkennen. Diese Aufgabe ist in deinem Antwortzweig weiterhin ungelöst.
Also wie kommt man nun mit deiner Methode zum Ergebnis, ob in der Eingabe ungewünschte Zeichen enthalten sind?
Zusatzfrage zu deinem Ansatz der Codepoint-Ermittlung: Du wolltest die Namen der Zeichen anzeigen. Wie ermittelst du diese?
dedlfix.