【发布时间】:2016-07-14 03:52:50
【问题描述】:
我正在尝试扩展 MySQLi 类。
<?php
class DataManager extends mysqli {
private $username = "me";
private $password = "notgonnatellyou";
private $dbname = "data";
private $host = "sql.my";
public function __construct() {
return connect();
}
private function connect() {
$connection = parent::__construct($host,$username,$password,$dbname);
return $connection;
}
public function query($query) {
autocommit(false);
if (!($do = parent::query($query))) {
rollback();
return false;
}
else {
commit();
return $do;
}
}
}
?>
现在我收到以下错误:
致命错误:第 37 行 /me/datamanager.php 中 DataManager::connect() 的访问级别必须是公共的(如 mysqli 类)
我不明白为什么它应该公开......如果我公开它,它会说
调用未定义函数connect()
但是如你所见,我只是做了那个功能......
【问题讨论】:
-
公开后将被称为
$this->connect();或self::connect() -
显示你使用你的类的代码。
标签: php class oop mysqli extends