$这个问题在 php 7.1.9

$this issue in php 7.1.9

我有一个 class,我正在使用 $this,自从从 5.6 升级到 7.1 后,我无法工作。我很困惑为什么?请参阅下面的代码示例:

class user_BL extends BLL {

public function getCurrentUserFromSession($userid) {
            $userrecord = array();

            $query = new query();
            $query->addCriteria("userid", $userid , "=");

            $userrecords = $this->getDataByQueryObj($query, new user_DAL());

            if (isset($userrecords[0])){
                $userrecord = $userrecords[0];
                $lastlogindetails = $this->getLastLoginDetailsAsArray();
                $userrecord['logindatetime'] = astlogindetails['logindatetime']; 
            }

            return $userrecord;
        }
}

getLastLoginDetailsAsArray 是 BLL 基础 class 上的一个函数。 IDE 解释为 ok 并认为它可以使用。

任何对此的帮助都会非常有帮助。

谢谢,

迪亚诺

编辑:我得到的错误是致命错误:未捕获错误:不在对象上下文中时使用 $this

忘记补充说昨天是漫长的一天。 :)

在深入了解错误后,我发现呼叫是这样进行的:

user_BL::getCurrentUserFromSession();

这似乎是问题所在。像这样调用它:

$userbl = new user_BL();
$userbl->getCurrentUserFromSession();

更正此问题。 感谢大家的帮助。