require("Annonce.php");
$annonce = new Annonce();
$annonce->id=1;
$annonce->delete();
?>
我Annonce.php是!
require("DB.php");
class Annonce extends DB {
}
?>
最後DB是:
$db = new PDO('mysql:host=localhost;dbname=annonces;charset=utf8', 'root', '');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
class DB {
public static $debug = true;
function __construct() {
# code...
}
function delete() {
$id = $this->id;
$table = get_class($this);
$sql="delete from $table where id=$id";
if ($this::$debug) echo $sql;
}
function get() {
$sql="select *...";
}
}
?>
我不知道什麼是定義$ DB連接的最佳策略是什麼?
如果我在DB類中定義它,它會在任何時候創建一個「Annonce」對象時建立一個連接。也許使用$ db作爲GLOBAL(我認爲它不乾淨)
對此有何建議?
2014-03-14
yarek
+0
也許你會對[Singleton pattern]感興趣(http://php.net/manual/de/language.oop5.patterns.php)。 –
+0
或依賴注入容器模式 –