我一直在研究在我一直在开发的登录类中使用 session_regenerate_id,并且从阅读 PHP 文档和其他一些站点来看,它似乎创建了一个新会话,其中新生成的 ID 携带了以前的数据,因为该函数是在 PHP 4.3.2 中添加。
从 PHP 5.1 开始,它有一个 delete_old_session 参数,如果设置为 true,它也会破坏之前的会话,但在之前的版本中不会。
我的问题是,如果我要在运行低于 5.1 的 PHP 版本的服务器上使用 session_regenerate_id,那么使用 session_regenerate_id 并销毁前一个会话的最佳方法是什么?
我不认为 session_destroy() 会起作用,因为如果我在 session_regenerate_id 之前使用它,那么它将无法携带以前的会话数据,如果在它之后使用它只会破坏新会话。