PHP session_name 会话函数
-
定义和用法
session_name - 读取/设置会话名称 -
版本支持
PHP4 PHP5 PHP7 支持 支持 支持 7.2.0 session_name() 函数会检查会话状态, 之前的版本仅仅检查 cookie 状态。 所以,旧版本的 PHP 允许你在调用 session_start() 函数之后再调用 session_name() 函数, 新版本的 PHP 不再允许这样做了。
-
语法
session_name ( [ string $name ] )
session_name() 函数返回当前会话名称。 如果指定 name 参数, session_name() 函数会更新会话名称, 并返回 原来的 会话名称。 如果使用 name 指定了新字符串作为会话 cookie 的名字, session_name() 函数会修改 HTTP 响应中的 cookie (如果启用了 session.transid,还会输出会话 cookie 的内容)。 一旦在 HTTP 响应中发送了 cookie 的内容之后, 调用 session_name() 函数会产生错误。 所以,一定要在调用 session_start() 函数之前 调用此函数。请求开始的时候,会话名称会被重置并且存储到 session.name 配置项。 因此,要想设置会话名称,那么对于每个请求,都需要在 调用 session_start() 函数 之前调用 session_name() 函数。 -
参数
参数 必需的 描述 name 否 用在 cookie 或者 URL 中的会话名称, 例如:PHPSESSID。 只能使用字母和数字作为会话名称,建议尽可能的短一些, 并且是望文知意的名字(对于启用了 cookie 警告的用户来说,方便其判断是否要允许此 cookie)。 如果指定了 name 参数, 那么当前会话也会使用指定值作为名称。 注意:会话名称至少需要一个字母,不能全部都使用数字, 否则,每次都会生成一个新的会话 ID。
-
返回值
返回当前会话名称。如果指定 name 参数,那么此函数会更新会话名称,并且 返回 原来的 会话名称。 -
示例
尝试一下/* 设置会话名称为 WebsiteID */ $previous_name = session_name("WebsiteID"); echo "先前的会话名称为 $previous_name ";
-
相关函数
session_start() - 启动新会话或者重用现有会话