我需要帮助来理解将在一种方法中创建的对象(MySQL 连接)传递给同一类中的另一种方法的正确方法。
我正在尝试创建一个数据库类,它使用构造函数和所有其他方法加载连接,使用这个连接来执行它们各自的功能。
在尝试这样做时,我不断收到此错误:
致命错误:在第 44 行的 /database.php 中的非对象上调用成员函数 query()
我的代码:
class database
{
public $mysqli;
public function __construct($database_server, $database_name, $database_user, $database_pass)
{
$mysqli = new mysqli($database_server,$database_user, $database_pass, $database_name);
if ($mysqli->connect_error)
{
die('Connect Error (' . $mysqli->connect_errno . ') '. $mysqli->connect_error);
}
echo "Database connection established successfully.<br>";
return $this->mysqli;
}
public function fetch_data()
{
$query = "select * from payment";
if ($result = $this->mysqli->query($query))
{
// fetch associative array
while ($row = $result->fetch_assoc())
{
printf ("%s (%s)\n", $row["id"], $row["status"]);
}
}
}
}
任何帮助,将不胜感激。谢谢大家。