Wenn man mit Sessions arbeitet und auf dem Server prüfen möchte, ob die Sessionfunktionalität aktiviert ist und eine gültige Session erstellt wurde, musste man bisher wie folgt vorgehen:
/* * PHP 5.3 */ session_start(); if (isset($_SESSION)) { // Session existiert } else { // Session existiert nicht! }
Mit PHP 5.4 gibt es nun eine etwas schönere Funktion, um den Status der Session abzufragen: session_status(). Es gibt drei mögliche Rückgabewerte (Tabelle 1), die am besten mit den neu zur Verfügung gestellten Konstanten verglichen werden sollten:
/* * PHP 5.4 */ session_start(); $sessionStatus = session_status(); if ($sessionStatus == PHP_SESSION_DISABLED) { // Sessions sind deaktiviert } elseif ($sessionStatus == PHP_SESSION_NONE) { // Sessions aktiviert, aber keine Session vorhanden } else { // Session exisiert }
Rückgabewert | Bedeutung | |
---|---|---|
PHP_SESSION_DISABLED | 0 | if sessions are disabled |
PHP_SESSION_NONE | 1 | if sessions are enabled, but none exists |
PHP_SESSION_ACTIVE | 2 | if sessions are enabled, and one exists |
Tabelle 1: Die Rückgabewerte im Überblick