session_name
(PHP 4, PHP 5, PHP 7, PHP 8)
session_name — Liefert und/oder setzt den Namen der aktuellen Session
Beschreibung
$name
= null
): string|false
session_name() gibt den Namen der aktuellen Session
zurück. Falls name
angegeben wurde, aktualisiert
session_name() den Namen der Session und gibt den
alten Namen der Session zurück.
Wird ein neuer Session-Name (name
) angegeben, ändert
session_name() das HTTP-Cookie (und den Inhalt der
Ausgabe, wenn session.transid
aktiv ist). Nachdem das
HTTP-Cookie gesendet wurde, erzeugt session_name() einen
Fehler. session_name() muss vor
session_start() aufgerufen werden, damit die Session
ordnungsgemäß funktioniert.
Der Session-Name wird auf den Ausgangswert zurückgesetzt, der zu Beginn in
session.name
gespeichert wurde. Deshalb muss
session_name() bei jeder Anfrage aufgerufen werden (und
bevor session_start() aufgerufen wurde).
Parameter-Liste
-
name
-
Der Session-Name referenziert den Namen der Session, der in Cookies und URLs verwendet wird (z. B.
PHPSESSID
). Er sollte nur alphanumerische Zeichen enthalten und sollte kurz und beschreibend sein (z. B. für Benutzer mit aktivierter Cookie-Warnung). Wennname
angegeben wird und nichtnull
ist, wird der Name der aktuellen Session durch dessen Wert ersetzt.WarnungDer Session-Name darf nicht nur aus Zahlen bestehen, sondern muss mindestens einen Buchstaben enthalten. Andernfalls wird jedesmal eine neue Session-ID erzeugt.
Rückgabewerte
Gibt den Namen der aktuellen Session zurück. Wird
name
übergegeben und die Funktion aktualisiert den
Session-Namen, wird der Name der alten Session
zurückgegeben. Bei einem Fehler wird false
zurückgegeben.
Changelog
Version | Beschreibung |
---|---|
8.0.0 |
name ist jetzt nullable (akzeptiert den
NULL-Wert).
|
7.2.0 | session_name() prüft den Session-Status; zuvor wurde nur der Cookie-Status geprüft. Somit war es zuvor möglich, dass session_name() nach session_start() aufgerufen wurde, was möglicherweise zum Absturz von PHP und zu anderem Fehlverhalten führen konnte. |
Beispiele
Beispiel #1 session_name()-Beispiel
<?php
/* den Session-Namen auf WebsiteID setzen */
$name_vorher = session_name ("WebsiteID");
echo "Der vorhergehende Session-Name war $name_vorher<br />";
?>