(PHP 4, PHP 5, PHP 7, PHP 8)
session_name — Lit et/ou modifie le nom de la session
$name
= null
): string|false
session_name() retourne le nom de la session
courante. Si le paramètre name
est fourni,
session_name() modifiera le nom de la session
et retournera l'ancien nom de la session.
Si un nouveau nom de session name
est
fourni, session_name() modifie le cookie HTTP
(et le contenue de sortie quand session.transid
est
activé). Une fois que le cookie HTTP est
envoyé, session_name() émet une erreur.
session_name() doit être appelé
avant session_start() pour que la session fonctionne
correctement.
Le nom de la session est réinitialisé à la valeur par défaut, stockée dans
session.name
lors du démarrage. Ainsi, vous devez
appeler session_name() pour chaque demande (et avant que
session_start() soit appelé).
name
Le nom de session est utilisé comme nom pour les cookies et les URLs
(i.e. PHPSESSID
). Il ne doit contenir que des caractères alphanumériques ;
il doit être court et descriptif (surtout pour les utilisateurs
ayant activé l'alerte cookie). Si name
est fourni et non null
,
le nom de la session courante sera remplacé par cette valeur.
Les noms de session ne peuvent pas contenir uniquement des chiffres, au moins une lettre doit être présente. Sinon, un identifiant de session sera généré à chaque fois.
Retourne le nom de la session courante. Si le paramètre name
est fourni et que la fonction met à jour le nom de la session, alors
l'ancien nom de session sera retourné, ou false
si une erreur survient.
Version | Description |
---|---|
8.0.0 |
name est désormais nullable.
|
7.2.0 | session_name() vérifie l'état de la session, auparavant elle vérifiait uniquement l'état du cookie. Par conséquent, les versions plus anciennes de session_name() autorise l'appel de session_name() après session_start() ce qui peut causer le plantage de PHP et peut donner lieu à des comportements étranges. |
Exemple #1 Exemple avec session_name()
<?php
/* choisi le nom de session : WebsiteID */
$previous_name = session_name("WebsiteID");
echo "L'ancien nom de la session était $previous_name<br />";
?>