2017-04-01 124 views
0

美好的一天!PHP会话变量Session_name

如何更改我的session_name()变量的名称。下面是从php.net

<?php 
$previous_name = session_name("WebsiteID"); 
echo "The previous session name was $previous_name<br />"; 
?> 

我的示例代码它仍然呼应PHPSESSID代替WebsiteID,我使用PHP 7 alsor它试图运行我的PHP 5.3的其他工作站。我错过了什么?请指教。

谢谢!

+0

我想你以后再会话名称($ newName)将设置会话名称,你还需要“启动”会议。在session_name()之后使用session_start()并再次检查 – Andreas

回答

0

the manual

返回值

返回当前会话的名称。如果名称,并给出功能 更新会话名,旧的会话的名称返回

所以这是预期的行为:结果是旧值,而不是新的价值。

这就是为什么示例文本在谈论The previous session,而不是the current session我会假设:d

+0

感谢Nanne的快速响应,顺便说一下,如果遇到这种情况,我如何获取当前会话名称? –

+0

请检查手册:'session_name()返回当前会话的名称。如果给出名称,session_name()将更新会话名称并返回旧的会话名称。所以如果你调用'session_name()',你会得到当前会话。 – Nanne

+0

(基本上,这意味着如果你调用'session_name'你会得到“当前”的名字,如果你提供了一个新的名字,它会在返回当前名字后更新它,所以它有点... php-ish ) – Nanne