欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP会话跟踪末与文件处理系统一(43),

程序员文章站 2024-02-01 15:43:34
...

PHP会话跟踪末与文件处理系统一(43),

注销变量

1、unset ($_SESSION[‘xxx’])删除单个session变量,unset($_SESSION[‘xxx’]) 用来unregister一个已注册的session变量。其作用和session_unregister()相同。     session_unregister()在PHP5中不再使用。
  注:unset($_SESSION) 此函数千万不可使用,它会将全局变量$_SESSION销毁,而且还没有可行的办法将其恢复。用户也不再可以注册$_SESSION变量。
2、$_SESSION=array() 删除多个session变量
3、session_unset() 删除所有session变量

销毁会话

session_destroy()结束当前的会话,并清空会话中的所有资源。该函数不会unset(释放)和当前session相关的全局变量,也不会删除客户端的session cookie。
返回值:布尔值。
功能说明:这个函数结束当前的session,此函数
没有参数,且返回值均为true,

注:PHP默认的session是基于cookie的,如果要删除cookie的话,必须借助setcookie()函数。

删除session的案例

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

持久化session

请求结束后所有注册的变量都会自动被序列化(为了方便保存到服务器端的会话文本文件中) ,读取时再进行还原。