PHP会话_destroy()

PHP会话_destroy(),php,session,Php,Session,在我的应用程序中,当用户注销时,我希望销毁当前用户的所有会话。我是取消设置应用程序中使用的每个会话,然后调用会话_destroy()还是只调用会话_destroy() 谢谢大家! 会话\u destroy()不会销毁所有用户的会话。您需要写入持久性存储介质(数据库、文本文件等),然后调用session\u destroy()终止它自己的会话。然后,让所有页面在加载时进行检查。如果它有一些特殊的命令(例如,normal是0,destroy命令是1),让他们调用session\u destroy()

在我的应用程序中,当用户注销时,我希望销毁当前用户的所有会话。我是取消设置应用程序中使用的每个会话,然后调用会话_destroy()还是只调用会话_destroy()

谢谢大家!

会话\u destroy()
不会销毁所有用户的会话。您需要写入持久性存储介质(数据库、文本文件等),然后调用
session\u destroy()
终止它自己的会话。然后,让所有页面在加载时进行检查。如果它有一些特殊的命令(例如,normal是
0
,destroy命令是
1
),让他们调用
session\u destroy()

session\u destroy()
函数应该取消设置的所有会话。所以,是的,你只需要打电话。您可以通过调用
session\u destroy()
然后尝试回显会话值来测试它,如果它回显则它不工作,如果出现某种描述的错误,则该会话已成功销毁。

session\u unset():删除所有会话变量。在1rst中,F5不再显示会话变量

会话\u destroy():删除当前会话。在2dn中,F5不再显示会话变量

因此,logout.php脚本可能是:

<?php
session_start();

...

// remove all session variables
session_unset(); 

// destroy the session 
session_destroy();

// Redirect to home
header("Location: home.php");
exit();

会话\u destroy()
仅销毁当前会话,而不是全部会话。布拉德,谢谢你!单独使用session_destroy()可以很好地工作,我只是不确定这是否是我必须做的唯一一件事。噢,“sessions”是指
$\u session
变量的索引吗?还是实际的用户会话?应用程序中设置的所有当前用户会话。@Scott W:那么
会话\u destroy()
本身不会剪切它。我的问题是,当只有一个用户注销时,为什么你要注销所有人?乔纳,我想你误解了我的问题。正如我在问题中所说,我只想在注销时销毁当前用户的会话。好的,我明白了,我打错了。我说的是用户,而不是用户的。我的错…约拿,哪些课程没有被破坏?它们还能正常工作吗?@Scott W:除了当前的一个,其他都可以。对每个访问站点的人都有自己的会话<代码>会话_destroy()
只销毁其中一个,而不是全部。