首页 >后端开发 >PHP问题 >php如何删除session中的值

php如何删除session中的值

藏色散人
藏色散人原创
2020-08-21 09:18:143544浏览

php删除session值的方法: 1、使用【unset($_SESSION['xxx'])】删除单个session;2、使用【session_unset()】删除多个session;3、通过【session_destroy】清空会话。

php如何删除session中的值

推荐:《PHP视频教程》 

php删除session的几种方法

1、unset($_SESSION['xxx']) 删除单个session,unset($_SESSION['xxx']) 用来unregister一个已注册的session变量。其作用和session_unregister()相同。

<?php
         // 初始化session.
         session_start();
         /*** 删除所有的session变量..也可用unset($_SESSION[xxx])逐个删除。****/
         $_SESSION = array();
         /***删除sessin id.由于session默认是基于cookie的,所以使用setcookie删除包含session id的cookie.***/
         if (isset($_COOKIE[session_name()])) {
               setcookie(session_name(), &#39;&#39;, time()-42000, &#39;/&#39;);
          }
         // 最后彻底销毁session.
         session_destroy();
?>

unset($_SESSION) 此函数千万不可使用,它会将全局变量$_SESSION销毁,而且还没有可行的办法将其恢复。用户也不再可以注册$_session变量。

2、session_unset() 或者 $_SESSION=array() 删除多个session

3、session_destroy()结束当前的会话,并清空会话中的所有资源。该函数不会unset(释放)和当前session相关的全局变量(globalvariables),也不会删除客户端的session cookie.PHP默认的session是基于cookie的,如果要删除cookie的话,必须借助setcookie()函数。

总结:

session_destroy是注销所有的session变量,并且结束session会话;

如果希望删除一些session数据,则可以使用unset()函数或session_destroy()函数。unset()函数的作用是释放指定的session变量,调用格式如下:

<?php
unset($_SESSION[&#39;jugelizi&#39;]);
?>

session_destroy()函数的作用是将session全部删除,调用格式如下:

<?PHP session_destroy(); ?>

提示:session_destroy()会重新设置session,你会丢失所有已保存的session数据。

session_unset()并不注销session变量,但把所有的session变量的值清空。

以上是php如何删除session中的值的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn