从php.net文档中:
session_destroy—销毁注册到会话的所有数据
session_unset —释放所有会话变量
我的三部分问题是:
这两个功能看起来非常相似。 两者之间的真正区别是什么?
两者似乎都删除了注册到会话的所有变量。它们中的任何一个是否实际上破坏了会话本身?如果不是,您如何完成此任务(销毁会话本身)。
这两个函数都没有删除客户端的会话cookie是否正确?
session_unset 只是清除$_SESSION变量。等效于:
session_unset
$_SESSION
$_SESSION = array();
因此,这只会影响局部$_SESSION变量实例,而不会影响会话存储中的会话数据。
与此相反, session_destroy销毁存储在会话存储器中的会话数据(例如文件系统中的会话文件)。
session_destroy
其他所有内容保持不变。