Klassen-Referenz - sessionManager
PHP bietet bereits ein integriertes Session-Management. Hierzu wird die superglobale Variable
$_SESSION zum Session-Handling und weitere Funktionen aus dem Package Session
angeboten. Um mit diesen Hilfsmitteln ein transparentes Session-Handling zu betreiben muss jedoch
oft Code zur Überprüfung der Session und zur gemeinsamen Nutzung durch mehrere Programm-Teile
eingeführt werden. Diese Aufgabe übernimmt im Adventure PHP Framework der
sessionManager. Wird in einer Applikation eine Session benötigt, kann diese
einfach per
$sessMgr = new sessionManager('{ApplikationsNamespace}');
initialisiert werden. Dabei ist "{ApplikationsNamespace}" jeweils durch den Namespace der
aktuellen Applikation zu ersetzen. Vor der Benutzung der Komponente muss diese mit
import('core::session','sessionManager');
in die aktuelle Applikation eingebunden werden.
Der sessionManager untergliedert die in PHP global zur Verfügung gestellte Session in
unterschiedliche Namespaces, die von unterschiedlichen Applikationen zur gleichen Zeit benutzt werden
können. Per
$sessMgr->saveSessionData('MyParam','MyValue');
lassen sich nach der Initialisierung Daten in der Session speichern. Durch den sessionManager
wird zudem sichergestellt, dass die Session immer beim Einsatz der Applikation existent ist. Ein
session_start() ist nicht mehr notwendig. Gespeicherte Daten können ganz einfach
mit
echo $sessMgr->loadSessionData('MyParam');
aus der Session mit dem Namespace, mit dem der Session-Manager initialisiert wurde ausgelesen werden.
Für einen Logout-Vorgang kann ein Session-Namespace via
$sessMgr->destroySession('{ApplikationsNamespace}');
zurückgesetzt werden. Anschließend liefert ein loadSessionData()
false zurück.
Kommentare
Bitte geben Sie Ihren Kommentar hier ein. Füllen Sie alle mit * gekennzeichneten Felder vollständig und korrekt aus. Um zum Artikel zurückzukehren klicken sie bitte hier. Zur Formatierung des Textes können folgende BBCode-ähnliche die Zeichen verwendet werden:- [f]..[/f]: fett
- [k]..[/k]: kursiv
- [u]..[/u]: unterstrichen
Hinweis: Formatierungszeichen in Name und E-Mail-Adresse werden nicht akzeptiert.
|