为什么我必须取消所有会话变量?

时间:2011-11-18 16:57:16

标签: php session global-variables

为什么我必须取消会话变量?session_destroy不够吗?

<?php
     session_start();
     $_SESSION = array();// <--Is necessary?
     if (isset($_COOKIE[session_name()]])){
        setcookie(session_name(),'',time()-42000,'/');
     }
     session_destroy();
     header('Location:Login.php');
?> 

2 个答案:

答案 0 :(得分:2)

这是一种取消值的预防措施,以防session_destroy();对象未被销毁。

只是预防性和良好做法,不是必需的。

你为什么要开始一个会议并立即摧毁它?

答案 1 :(得分:1)

您应该同时使用session_unset()session_destroy()。 请注意,session_destroy()仅在重新加载页面或重定向到其他页面时清空变量。只要它是同一页面,变量在调用session_destroy()后仍然可用,因此最好在session_unset()之前使用session_destroy()