试图调用方法:未定义功能错误(Trying to call method: undefined fu

2019-09-19 12:28发布

我有一类连接到我的数据库,带的东西,并从数据库查询返回的东西。 总之,我遇到的问题是,我想打电话给runQuery()方法,但每次我试图,我得到这个错误:

致命错误:调用未定义功能runQuery()在DatabaseConnector.php线22

也许任何想法? 我知道runQuery是私有的,但它是在同一个类中。 只是踢我改成了公众的任何方式,仍然得到了同样的错误:(

final class DatabaseConnector
{
    private $db;

    public function DatabaseConnector()
    {
        //  constructor
    }

    public function connectMySQL($host, $user, $passwrd, $db, $query)
    {
        @ $db = new mysqli($host, $user, $passwrd, $db);

        if (mysqli_connect_errno())
        {
            return mysqli_connect_errno();
        }
        else
        {
            $queryResult = runQuery($query);

            return $queryResult;
        }
    }

    private function runQuery($query)
    {
        $result = $db->query($query);

        return $result;
    }
}

Answer 1:

在PHP中,你必须前缀对象级别的方法/使用变量$this否则会显得在全球“命名空间”功能/变量。

因此,改变$queryResult = runQuery($query);$queryResult = $this->runQuery($query);



文章来源: Trying to call method: undefined function error