session_name
(PHP 4, PHP 5, PHP 7)
session_name — Get and/or set the current session name
Description
session_name ([ string|null $name = null ] ) : string|false
session_name() returns the name of the current session. If name
is given, session_name() will update the session name and return the old session name.
If a new session name
is supplied, session_name() modifies the HTTP cookie (and output content when session.transid
is enabled). Once the HTTP cookie is sent, session_name() raises error. session_name() must be called before session_start() for the session to work properly.
The session name is reset to the default value stored in session.name
at request startup time. Thus, you need to call session_name() for every request (and before session_start() is called).
Parameters
-
name
-
The session name references the name of the session, which is used in cookies and URLs (e.g.
PHPSESSID
). It should contain only alphanumeric characters; it should be short and descriptive (i.e. for users with enabled cookie warnings). Ifname
is specified and notnull
, the name of the current session is changed to its value.WarningThe session name can't consist of digits only, at least one letter must be present. Otherwise a new session id is generated every time.
Return Values
Returns the name of the current session. If name
is given and function updates the session name, name of the old session is returned, or false
on failure.
Changelog
Version | Description |
---|---|
8.0.0 | name is nullable now. |
7.2.0 | session_name() checks session status, previously it only checked cookie status. Therefore, older session_name() allows to call session_name() after session_start() which may crash PHP and may result in misbehaviors. |
Examples
Example #1 session_name() example
<?php /* set the session name to WebsiteID */ $previous_name = session_name("WebsiteID"); echo "The previous session name was $previous_name<br />"; ?>
See Also
- The session.name configuration directive
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.session-name.php