PHP会话注销

时间:2016-09-18 03:54:26

标签: php security session login

为什么人们会这样做?

session_start();
unset($_SESSION['session']);
session_destroy();

为什么人们做session_start,而不是unset,然后销毁?

3 个答案:

答案 0 :(得分:2)

要销毁当前活动的会话,您需要先启动会话。那是因为session_start()恢复了当前活动的会话。您需要访问它,因为您想知道您正在取消哪个会话。

您可能希望看一下手册中的这一行:

  

session_start()根据通过GET或POST请求传递的会话标识符创建会话或恢复当前会话,或通过cookie传递。

参考:PHP Manual - session_unset()

答案 1 :(得分:1)

这些树步骤解释了:

  1. 在session_start(); - >初始化会话或如果您已经拥有会话,则恢复会话。

  2. 取消设置($ _ SESSION); - >一旦你甚至在内存中销毁会话,你需要确保会话数组不存在。你可以直接去session_destroy();继续,但装载的阵列仍在那里。

  3. Session_destroy(); - >通过从客户端删除cookie来销毁会话。

答案 2 :(得分:1)

session_start()恢复当前活动会话。通过这样做,您可以访问您的会话变量。

取消设置($ _ SESSION ['session']); unset()销毁指定的变量。

session_destroy(); 会销毁与当前会话关联的所有数据。它不会取消设置与会话关联的任何全局变量,也不会取消设置会话cookie。要再次使用会话变量,必须调用session_start()。

了解更多详情goto http://php.net/manual/en/function.session-destroy.php

或者你可以搜索