dedlfix: __destruct()

Beitrag lesen

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.

  1. 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.

  1. 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.