今天在写php的一个需求时,需要彻底的删除php session资源以及session存储文件,下面提供的两种方法,可以参考一下。

php 彻底删除 session资源以及存储文件的方法

在说方法之前,先了解两个函数 session_unset() 与 session_destroy()。

session_unset():释放当前在内存中已经创建的所有$_SESSION变量,但是不删除session文件以及不释放对应的session id.

session_destroy():删除当前用户对应的session文件以及释放session id,内存中$_SESSION变量内容依然保留.

方法1:

使用 session_unset() 与 session_destroy() 函数彻底删除 session 资源以及文件,推荐此方法!

PHP代码:

session_start();
$_SESSION['user'] = 'mochu';
var_dump($_SESSION);
session_unset(); 
session_destroy();
var_dump($_SESSION);

输出结果:

array(1) {
  ["user"]=>
  string(5) "mochu"
}
array(0) {
}

方法2:

session_start();
$_SESSION['user'] = 'mochu';
var_dump($_SESSION);
$_SESSION = array();  //作用等同于session_unset();
session_destroy(); 
var_dump($_SESSION);