0

一緒に作業しているクラスがあります。

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); 

パブリック関数がない場合は次のようになります。

解析エラー:構文エラー、16行目のC:\ xampp \ htdocs \ Error \ClassWork.phpの予期しない'new'(T_NEW)

public関数で追加するglobalと、次のようになります。

解析エラー:構文エラー、予期しない'='、予期する'、'、または';' 18行目のC:\ xampp \ htdocs \ Error\ClassWork.phpにあります

4

1 に答える 1

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);
    }
}
于 2013-02-25T15:11:12.977 に答える