我有2个网站。
在一个网站中,这是真的:
session_is_registered('site1sess')
而在另一个中这是真的:
session_is_registered('site2sess')
这些是我在登录时向用户提供的会话名称。我的问题是,当我从一个站点注销时,我也会在另一个站点注销,因为我使用:
session_destroy();
从site1或2注销从中删除所有会话变量的最佳方法是什么? 谢谢。
答案 0 :(得分:50)
将unset()
用于特定于站点1或2的所有会话变量。
unset($_SESSION['site1']);
//or
unset($_SESSION['site2']);
您知道,从PHP 5.3.0版开始,session_is_registered
已被弃用。 See docs
答案 1 :(得分:2)
在unset($_SESSION['site1']);
之前session_start()
像这样
<?php
session_start();
unset($_SESSION['site1']);
?>
答案 2 :(得分:0)
当您退出1
时unset($_SESSION['site1sess']);
或者当您退出其他
时unset($_SESSION['site2sess']);
答案 3 :(得分:0)
您可以在不想登录登录用户的情况下取消设置会话。
if(isset($_GET['logout'])) {
session_unset($_SESSION['user']);
}