php中session删除清空方法总结
发布:smiling 来源: PHP粉丝网 添加日期:2016-08-22 09:44:18 浏览: 评论:0
session删除清空是很讲究了如果我们定义好可以清除指定变量否则不小心会把所有session都清除掉了,下面我们来看一些总结.
1、unset($_SESSION['xxx']) 删除单个session,unset($_SESSION['xxx']) 用来unregister一个已注册的session变量,其作用和session_unregister()相同.
session_unregister()在PHP5中已经废弃.
- <?php
- // 初始化session.
- session_start();
- /*** 删除所有的session变量..也可用unset($_SESSION[xxx])逐个删除。****/
- $_SESSION = array();
- /***删除sessin id.由于session默认是基于cookie的,所以使用setcookie删除包含session id的cookie.***/
- if (isset($_COOKIE[session_name()])) {
- //phpfensi.com
- setcookie(session_name(), '', time()-42000, '/');
- }
- // 最后彻底销毁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['jugelizi']);
- ?>
session_destroy()函数的作用是将session全部删除,调用格式如下:
<?PHP session_destroy(); ?>
提示:session_destroy()会重新设置session,你会丢失所有已保存的session数据.
Tags: session php会话清空
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)