PHP Elseif总是返回错误,多个条件

我试图做一个帮助器php函数,如果用户访问权限正确,它将返回true / false。 访问级别在用户登录时设置。问题是该函数始终返回false。 该函数位于我要使用它的页面中的“class”php文件中(包含include_once)。

我有点新的PHP,但如果条件似乎是正确的。

我已经测试过以管理员和“经济”身份登录,但它并没有返回true。 我也尝试回显作为参数发送的值,甚至在elseif语句之前检查访问级别是否正确(通过回显值)。

    const AccessLevelUser = 0;      
    const AccessLevelAdmin = 1;     
    const AccessLevelManager = 2; 
    const AccessLevelEconomy = 3;

    public static function hasAccessLevel($requiredAccess) {
        //file_put_contents('logg.txt', $logg);

        if( !isset($_SESSION['accesslevel']) ) {
            header("location:index.php?location=login");
            exit;
        }elseif ( $requiredAccess == AccessLevelAdmin && $_SESSION['accesslevel'] == AccessLevelAdmin ) {
                echo "Admin True";
                return true;

        }elseif( $requiredAccess == AccessLevelEconomy && ($_SESSION['accesslevel'] == 3 || $_SESSION['accesslevel'] == 1) ) {
                echo "Economy True";
                return true;

        }elseif( $requiredAccess == AccessLevelManager && ($_SESSION['accesslevel'] == 2 || $_SESSION['accesslevel'] == 1) ) { 
                echo "Manager True";
                return true;

        }elseif( $requiredAccess == AccessLevelUser && ($_SESSION['accesslevel'] == 0 || $_SESSION['accesslevel'] == 1) ) { 
                echo "User True";
                return true;
        }else{
                echo "FALSE!";
                return false;
        }
    }
链接地址: http://www.djcxy.com/p/58877.html

上一篇: PHP Elseif always returning false, multiple conditions

下一篇: admin role only via Auth