Tach!
Bereits Sven Rautenberg hat empfohlen die Datenbankverbindung über DB::__construct() mit zu starten und über DB::__destruct() automatisch zu beenden.
So pauschal kann er das nicht gemeint haben. Sicherlich hatte er dabei deinen konkreten Anwendungsfall mit berücksichtigt.
- Ist es richtig, dass __destruct() aufgerufen wird, wenn das Script beendet oder vorzeitig abgeebrochen wird?
Welche Aussage trifft dazu das PHP-Handbuch?
Wie sieht's bei einer Weiterleitung mit header('location: ... ') aus?
Eine Weiterleitung ist aus Serversicht lediglich diese Header-Ausgabe. Das PHP-Script arbeitet ansonsten wie jedes andere PHP-Script auch.
- In welcher Reihenfolge werden die Destruktoren aufgerufen?
Welche Aussage trifft dazu das PHP-Handbuch?
Dann wenn zu erst DB::__construct() aufgerufen würde, könnte die Session-Tabelle nicht mehr aktualisiert werden!
__destruct() meinst du wohl. Du könntest das Schließen der Verbindung einfach dem eingebauten Aufräummechanismus PHPs überlassen.
dedlfix.