echo $begrüßung;
{...} Am besten ist es wohl, alle möglichen Fehler an Ort und Stelle zu behandeln, denn nur da kann man realistisch einschätzen, welche Reaktion in dem Fall angemessen ist.{...}
Schon klar. Ich arbeite im Code selber auch überwiegend mit [...]
Wieso gehst du nach einem Schema F vor? Findest du dieses Prinzip für die "überwiegende" Anzahl der Anwendungsfälle verwendbar oder hast du (zufälligerweise) immer nur solche Anwendungsfälle? Was ist mit den anderen?
Sicher wäre es schön, wenn es einen goldenen Weg gäbe. Das wünscht sich vermutlich so manch einer, der eine Fremdsprache lernt. Doch Regeln sind nur dafür da, den Anwender mit ihren Ausnahmen zur Verzweiflung zu bringen. Genau wie ein Sprachlernender es früher oder später im Gefühl hat, wann man welches Konstrukt einsetzt, ist es beim Verwenden bestimmter Konstrukte beim Programmieren.
{...}Dass einem dabei immer noch unbedachte Fehler auftreten können, ist ein weiteres Thema. Vermutlich geht es dir nur um diese.{...}
Ja genau. Ich arbeite immer mit set_error_handler("my_handler_function");
Die Funktion läd per require_once(); "mein Errorhandling" nach (weitere Funktionen, etc.). Und dann geht eben los.
Kann man machen. Man kann auch error_log verwenden, oder was auch immer man für sein Projekt angemessen findet.
Anfänglich wollte ich eine eigene Klasse für mein Fehlernehandlung anlegen. Das fand ich dann doch etwas überzogen, da das Script nach einem Fehler im Praxisbetrieb eh nicht weiterläuft und ich deshalb keinen wirklich Sinn in Fehler-Stacks sehe.
Hast du dir das Exceptions-Konzept mal angesehen?
Wenn eine Routine, die Daten abrufen soll, einen von ihr nicht behebbaren Fehler feststellt ist es nicht ihre Aufgabe, das komplette Script sterben zu lassen. Sie kann den Fehler an die aufrufenden Programmteile weitermelden. Dort kann vielleicht angemessener auf den Fehler reagiert werden. Woher will denn die Datenroutine auch wissen, ob es aus Sicht der kompletten Anwendung nur ein Nice-To-Have-Feature war oder ein essentieller Bestandteil der zu erfüllenden Aufgabe?
echo "$verabschiedung $name";