Einführung

Die Unterstützung von Sessions in PHP bietet die Möglichkeit, bestimmte Daten während einer Folge von Aufrufen Ihrer Website festzuhalten. Damit können Sie persönlichere Anwendungen erstellen und Ihre Website ansprechender gestalten.

Einem Besucher wird beim Aufruf Ihrer Website eine eindeutige ID, die sogenannte Session-ID, zugeordnet. Diese wird entweder benutzerseitig in einem Cookie abgelegt oder in der URL übermittelt.

Die Unterstützung von Sessions erlaubt Ihnen, Daten zwischen Anfragen im superglobalen Array $_SESSION zu speichern. Wenn ein Besucher Ihre Website aufruft, überprüft PHP automatisch (falls session.auto_start auf 1 gesetzt ist) oder auf Anfrage (explizit durch session_start() oder implizit durch session_register()), ob mit der Anfrage schon eine bestimmte Session-ID gesendet wurde. Wenn dies der Fall ist, wird die zuvor gespeicherte Umgebung wiederhergestellt.

Achtung

Falls Sie session.auto_start aktivieren, können Objekte nur in Ihre Sessions aufgenommen werden, indem die Klassendefinition mittels auto_prepend_file geladen wird. Andernfalls müssen Sie Ihr Objekt mittels serialize() serialisieren und danach mittels unserialize() deserialisieren.

$_SESSION (und alle registrierten Variablen) werden intern von PHP unter Verwendung der in der Konfigurationseinstellung session.serialize_handler festgelegten Serialisierungsroutine serialisiert, nachdem die Anfrage beendet ist. Registrierte Variablen, die nicht definiert sind, werden als nicht definiert gekennzeichnet. Auch bei darauf folgenden Zugriffen werden sie nicht vom Session-Modul definiert, außer der Benutzer definiert sie später.

Warnung

Weil Session-Daten serialisiert werden, können resource-Variablen nicht in der Session gespeichert werden.

Hinweis:

Bitte beachten Sie beim Arbeiten mit Sessions, dass der Datensatz einer Session nicht angelegt wird, bevor eine Variable mit der Funktion session_register() registriert oder dem superglobalen Array $_SESSION ein neuer Schlüssel hinzugefügt wird. Das gilt auch dann, wenn eine Session mit der Funktion session_start() gestartet wurde.

Hinweis:

Mit PHP 5.2.2 wurde die nicht dokumentierte Eigenschaft eingeführt, Session-Dateien in "/tmp" zu speichern, selbst wenn open_basedir aktiviert war und "/tmp" nicht ausdrücklich zur Liste der zulässigen Pfade hinzugefügt wurde. Diese Eigenschaft wurde in PHP 5.3.0 aus PHP entfernt.

add a note add a note

User Contributed Notes 2 notes

up
-9
harshitcode25 at gmail dot com
7 months ago
PHP Session Variables
When you are working with an application, you open it, do some changes and then you close it. This is much like a Session. The computer knows who you are. It knows when you start the application and when you end. But on the internet there is one problem: the web server does not know who you are and what you do because the HTTP address doesn't maintain state.

A PHP session solves this problem by allowing you to store user information on the server for later use (i.e. username, shopping items, etc). However, session information is temporary and will be deleted after the user has left the website. If you need a permanent storage you may want to store the data in a database.

Sessions work by creating a unique id (UID) for each visitor and store variables based on this UID. The UID is either stored in a cookie or is propagated in the URL.
up
-36
payal at radixweb dot com
3 years ago
If you use auto start session, Session cookie will not be created , it will be created only if you will use session_start()
To Top