2

我正在尝试实现简单的登录和注销机制。当用户登录时,我正在使用session_start(). 在用户注销时,我正在打电话

session_unset();
session_destroy();

但问题是下次注销后如果再次登录。the session_id()和以前一样。不管我做了多少session_destroy()session_id()总是一样的。这是否意味着session_destroy()不工作?还是有其他原因?

4

2 回答 2

5

改变

session_unset(); 
session_destroy();

session_start(); 
session_destroy();

正如您的代码会话并没有真正被破坏。

于 2012-04-20T03:26:37.620 回答
3

http://php.net/session_destroy

session_destroy() 基本上可以

$_SESSION = array();

但保持会话 cookie 和存储在其中的会话 ID 完好无损。您必须通过setcookie()调用手动取消设置 cookie,或使用session_regenerate_id()强制创建新 ID。

于 2012-04-20T04:27:22.547 回答