Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php怎样清除所有session

php怎样清除所有session

王林
王林asal
2020-08-14 13:15:083898semak imbas

php清除所有session的方法:首先注销所有的Session变量;然后使用session_destroy()函数结束当前的会话,并清空所有的资源,彻底销毁Session即可。

php怎样清除所有session

彻底销毁session

(推荐教程:php图文教程

如果整个 Session 会话已经结束,首先应该注销所有 Session 变量,然后使用 session_destroy() 函数清除结束当前的会话,并清空会话中的所有资源,彻底销毁Session,其代码如下显示:

<?php
session_destroy();
?>

session_start() 函数用来创建 Session 文件,而 session_destroy() 函数用来关闭 Session 的运作并删除 Session 文件,成功则返回 TURE,失败则返回 FALSE。但该函数并不会释放和当前 Session 相关的变量,也不会删除保存在客户端 Cookie 中的 Session ID 。

php中默认的 Session 是基于 Cookie 的,Session ID 被服务器存储在用户浏览器的 Cookie 中,所以在注销 Session 时也需要清除 Cookie 中保存的 Session ID,而这就必须借助 setcookie() 函数来完成。

(视频教程推荐:php视频教程

在用户浏览器的 Cookie 中,保存 Session ID 的 Cookie 标识名称就是 Session 的名称,这个名称是在 php.ini 中,通过 session.name 属性指定的值。在php脚本中,可以通过 session_name() 函数获取 Session 的名称。 删除保存在客户端 Cookie 中的 Session ID。

完整代码如下:

<?php
//开启 Session
session_start();
// 删除所有 Session 变量
$_SESSION = array();
//判断 cookie 中是否保存 Session ID
if(isset($_COOKIE[session_name()])) {
setcookie(session_name(),&#39;&#39;,time()-3600, &#39;/&#39;);
}
//彻底销毁 Session
session_destroy();
?>

Atas ialah kandungan terperinci php怎样清除所有session. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn