PHP: session_start() ohne Notice
Autor: Ralf v.d.Mark
eingetragen: Freitag, 14. Januar 2022 um 10:10 Uhr (2/2022 Kalenderwoche)
geändert: Freitag, 14. Januar 2022 um 10:25 Uhr (2/2022 Kalenderwoche)
Keywords: session_start session_status PHP_SESSION_ACTIVE aktiv
Kategorien: PHP,
Text:
Manchmal muss man prüfen, ob die Session schon läuft, bzw. gestartet wurde (aktiv ist).
Falls sie vorher schon gestartet wurde, kann man mit untenstehendem Code die PHP-Notice verhindern.
Verwende immer session_status(), um zu prüfen, ob eine Sitzung bereits gestartet und aktiv ist.
if (session_status() !== PHP_SESSION_ACTIVE) session_start();
oder
if (session_status() === PHP_SESSION_NONE) session_start();
Bitte nicht verwenden:
if (!isset($_SESSION)) session_start();
oder
if (session_id() === "") session_start();
Siehe php.net "function.session-status"
Quellcode:
if (session_status() !== PHP_SESSION_ACTIVE) {
session_start();//Muss an Anfang eröffnet werden
}