OOPを新しくしました。もともと私は変数を定義していて、クラス内とコンストラクタの外側で値を代入していましたが、今日のJavaのOOPレッスンの後では、これは悪いスタイルだと言われており、避けるべきです。ここでPHP:データベース接続クラスコンストラクタメソッド
は、私は嘲笑アップ私の元のPHPのデータベース接続クラスです:
class DatabaseConnection {
private $dbHost = "localhost";
private $dbUser = "root";
private $dbPass = "";
private $dbName = "test";
function __construct() {
$connection = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass)
or die("Could not connect to the database:<br />" . mysql_error());
mysql_select_db($this->dbName, $connection)
or die("Database error:<br />" . mysql_error());
}
}
は大丈夫と見なさ上記ですか?または、次の方が良い方法ですか?
class DatabaseConnection {
private $dbHost;
private $dbUser;
private $dbPass;
private $dbName;
function __construct() {
$this->dbHost = "localhost";
$this->dbUser = "root";
$this->dbPass = "";
$this->dbName = "test";
$connection = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass)
or die("Could not connect to the database:<br />" . mysql_error());
mysql_select_db($this->dbName, $connection)
or die("Database error:<br />" . mysql_error());
}
}
私はOOPを正しく理解していることを確認するために何を重視する必要がありますか?
すぐにOOPを忘れてみましょう。ホスト、ユーザー、パスワード、およびdbnameの値を構成ファイルに保存しないでください。 – Joni
@Aaron、私の更新された答えを確認してください。あなたの設定で考慮すべき項目をいくつか追加しました。 –
@JoniSalonen、どこに保管されているのですか?要点は、それらをコンストラクタのパラメータとして渡す必要があることです。 –