PHP - Foreach看起来发出警告

时间:2014-12-18 14:58:21

标签: php

我创建了一个登录页面,在从一个页面导航到另一个页面时,我想要销毁不必要的会话

$keepSessions = array('vendor_id','email_login','user_password','passport_id');
    foreach($_SESSION as $sessionKey){
        if (!in_array($sessionKey,$keepSessions)) {
            unset($_SESSION[$sessionKey]);
        }
    }

不幸的是我得到以下错误PHP警告:未设置的非法偏移类型

我似乎无法找到使用foreach和$ _SESSION来消除上述错误的解决方案

1 个答案:

答案 0 :(得分:3)

$keepSessions = array('vendor_id','email_login','user_password','passport_id');
foreach($_SESSION as $sessionKey => $sessionValue){
    if (!in_array($sessionKey,$keepSessions)) {
        unset($_SESSION[$sessionKey]);
    }
}

似乎您使用的是$ _SESSION变量中的值而不是键。希望它有所帮助!