Класс соединения PDO / код и дизайн класса
Я пытаюсь понять, как использовать PDO с классом "подключения".
class db {
private static $dbh;
private function __construct(){}
private function __clone(){}
public static function connect() {
if(!self::$dbh){
self::$dbh = new PDO("mysql:host=localhost;dbname=database", "user", "password");
self::$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
return self::$dbh;
}
final public static function __callStatic( $chrMethod, $arrArguments ) {
$dbh = self::connect();
return call_user_func_array(array($dbh, $chrMethod), $arrArguments);
}
}
Я взял вышеупомянутое изhttp://php.net/manual/en/book.pdo.php, и немного изменил переменные, но мне интересно, как я тогда подключиться к объекту подключения PDO в этом классе БД?
$dbh = new db; //intiate connection???
$stmt = $dbh->prepare("SELECT * FROM questions WHERE id = :id"); // or should I do db::prepare.. ???
$stmt->bindParam(':id', $_GET['testid'], PDO::PARAM_INT);
if ($stmt->execute()) {
while ($row = $stmt->fetch()){
print_r($row);
}
}
Есть идеи, пожалуйста? Спасибо