试图调用方法:未定义的函数错误
问题描述:
我有一个类连接到我的数据库,剥离东西,并从数据库查询返回的东西。总之,我遇到的问题是,我想打电话给runQuery()
方法,但每次我试图,我得到这个错误:试图调用方法:未定义的函数错误
Fatal error: Call to undefined function runQuery() in DatabaseConnector.php line 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;
}
}
答
在PHP中,你有前缀对象级别的方法/与$this
变量,否则它会查找功能/变量在全球“命名空间”。
因此改变$queryResult = runQuery($query);
到$queryResult = $this->runQuery($query);
呀,我讨厌这样。我猜你只是习惯了它。 – 2009-07-19 04:25:10