php session_unset()与session_destroy()区别及实例讲解
session_unset()函数session_unset()函数只是用于释放在session中注册的所有变量,不会删除服务器上session的文件也不会删除客户端cookie里面保存的session id。 删除session中注册的所有变量: session_unset(); 其实,释放在session中注册的所有变量,还有例外一种方法: $_SESSION=array(); //将某个用户在session中注册的变量全部删除。 上面已经说了session_unset()函数删除所有session变量。那如果想要把某个用户在session中注册的某一个变量删除掉,该如何操作呢?我们可以unset()函数。如下所示: unset($_SESSION['username']); //删除在session中注册的用户名变量 unset($_SESSION['password']); //删除在session中注册的用户密码变量 /* http://www.manongjc.com/article/1291.html */ 有的朋友可能认为,既然unset($_SESSION['username'])可以删除session中注册的用户名变量,那么unset($_SESSION)也可以删除全部的session变量,其实这样做是错误的,因为使用unset($_SESSION)将删除整个$_SESSION数组,这样将不能再通过$_SESSION超全局数组注册变量了。 session_destroy()函数session_destroy是注销所有的session变量,并且结束session会话。 销毁和当前session有关的所有的资料,可以调用session_destory函数结束当前的会话,并清除当前会话的所有资源。该函数的语法格式如下所示: bool session_destory(void) //销毁当前session有关的所有资料。 相对于session_start()函数,该函数用来关闭session的运作,如果成功则返回true,销毁session资料失败则返回false。但该函数并不会释放当前session相关的变量。也不会删除保存在客户端cookie中的session id。 session_unset()与session_destroy()区别session_destroy是注销所有的session变量,并且结束session会话; session_unset()并不注销session变量,只是把所有的session变量的值清空. 那么一般在做退出的操作时可以这样做: session_start(); /*其他操作代码*/ session_unset(); session_destroy(); ?> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
