我正在上课:
class SlayWork
{
public function AllowDB ()
{
$MySQLi = new mysqli(DBAHost, DBAUsername, DBAPassword, DBADB);
}
}
如何从此类中的其他公共函数与我的数据库进行通信?例如:
public function GetTest ()
{
$Var = $MySQL->prepare("SELECT * FROM test");
$Var->execute();
$Var->bind_result($ID, $Uname);
}
添加
public $MySQLi = new mysqli(DBAHost, DBAUsername, DBAPassword, DBADB);
没有公共函数返回:
解析错误:语法错误,意外的'新'(T_NEW) 第16行的C:\ xampp \ htdocs \ Error \ ClassWork.php
使用public函数添加global
返回:
解析错误:语法错误,意外'=',期待','或';'在 第18行的C:\ xampp \ htdocs \ Error \ ClassWork.php
答案 0 :(得分:2)
创建一个像private $db_conn;
这样的空属性。然后创建一个类构造,在其中创建如下的连接:
$this->db_conn = new mysqli(DBAHost, DBAUsername, DBAPassword, DBADB);
现在每次实例化您的类时,您都连接到数据库,并且您调用的所有方法都能够与您的数据库进行通信。
class.php
class Database {
private $db_conn;
public function __construct() {
$this->db_conn = new mysqli(DBAHost, DBAUsername, DBAPassword, DBADB);
}
public function GetTest () {
$Var = $this->db_conn->prepare("SELECT * FROM test");
$Var->execute();
$Var->bind_result($ID, $Uname);
}
}