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
或依赖注入容器模式 –