Objekte in Sessions speichern

Seit der Version 5 bietet PHP bessere und erweiterte Unterstützung für OOP. Doch anders als in anderen Sprachen wie z.B. Java, werden die Objekte bei PHP 5 bei jedem Request neu erzeugt. So ist OO nicht ganz so schön umzusetzen, z.B. ein Benutzer-Objekt während der gesamten Session zu verwenden.

Doch PHP bietet die Möglichkeit, Objekte in der Session zu speichern und so bei einem neuen Request auf ein bereits existierendes Objekt zuzugreifen. Es gibt nur einen kleinen Trick, den man beachten muss: Die Datei(en) mit der Klassen-Definition muss vor dem Start der Session included werden.

//Zuerst die Datei laden, die die Klasse enthaelt  include_once 'Benutzer.class.php'; 
//Dann de Session starten  session_start(); 
//Jetzt kann das Objekt aus der Session geladen werden 
$Benutzer = $_SESSION['BenutzerObjekt'];

Wird diese Reihenfolge nicht eingehalten, gehen die Daten in dem Objekt beim Speichern in die Session verloren, das Objekt wird also unbrauchbar.


Deprecated: Directive 'allow_url_include' is deprecated in Unknown on line 0