我有两个站点。
在一个网站上这是真的:
session_is_registered('site1sess')
在另一个例子中,这是真的:
session_is_registered('site2sess')
这些是我在登录时给用户的会话名称。我的问题是,当我从一个网站注销时,我也会在另一个网站上注销,因为我使用:
session_destroy();
从站点1或站点2中注销并删除所有会话变量的最佳方式是什么?非常感谢。
对特定于站点1或站点2的所有会话变量使用unset()
。
unset($_SESSION['site1']);
//or
unset($_SESSION['site2']);
正如您所知,session_is_registered
从PHP 5.3.0版本开始就被弃用了。请参阅文档。
在unset($_SESSION['site1']);
之前将session_start()
像这个一样放置
<?php
session_start();
unset($_SESSION['site1']);
?>
当您注销1个时
unset($_SESSION['site1sess']);
或者当您从其他注销时
unset($_SESSION['site2sess']);
您可以在不想注销已登录用户时取消设置会话。
if(isset($_GET['logout'])) {
session_unset($_SESSION['user']);
}