PHP会话包装器
我编写了一个静态会话类,它显然可以“设置、获取、启动但不销毁”临时用户会话,这意味着我必须在每个页面上启动一个会话才能销毁它,这在编程标准中毫无意义。有更好的方法吗PHP会话包装器,php,session,Php,Session,我编写了一个静态会话类,它显然可以“设置、获取、启动但不销毁”临时用户会话,这意味着我必须在每个页面上启动一个会话才能销毁它,这在编程标准中毫无意义。有更好的方法吗 每页上的是什么意思?因为每次请求都必须启动会话,这就是会话的工作方式。我的意思是,我不能在我的标题模板上启动一次,然后让它在整个站点上工作……如果始终包含标题模板,那么它应该可以工作。您在标题中做什么?如果使用正确,您显示的类很好。请您提供一个示例,演示如何在用户登录后获取$\u会话['user\u id']集,并仅将其放置在he
每页上的
是什么意思?因为每次请求都必须启动会话,这就是会话的工作方式。我的意思是,我不能在我的标题模板上启动一次,然后让它在整个站点上工作……如果始终包含标题模板,那么它应该可以工作。您在标题中做什么?如果使用正确,您显示的类很好。请您提供一个示例,演示如何在用户登录后获取$\u会话['user\u id']集,并仅将其放置在headerTemp中一次……不太正确。我可以帮助您不使用代码,但不会为您编写代码。但目前您正在这里显示工作代码。也许可以测试一些逻辑,如果你被卡住了,用这个新代码打开一个新问题。
class sessionWrapper {
private static $_sessionStarted = false;
public static function start() {
if(self::$_sessionStarted == false) {
session_start();
self::$_sessionStarted = true;
}
}
public static function set($key, $value) {
$_SESSION[$key] = $value;
}
public static function get($key) {
if(isset($_SESSION[$key])) {
return $_SESSION[$key];
} else {
return false;
}
}
public static function destroy() {
if(self::$_sessionStarted == true) {
session_destroy();
header('Location: $url');
}
}
}