Paaxio 1.0
Plateforme de streaming musical - SAE IUT Bayonne
Chargement...
Recherche...
Aucune correspondance
bd.class.php
Aller à la documentation de ce fichier.
1<?php
7class bd
8{
12 private static ?bd $instance = null;
13
17 private ?PDO $pdo;
18
24 private function __construct()
25 {
26 try {
27 $this->pdo = new PDO('mysql:host=' . Constantes::getInstance()->getConfig()['db']['host'] . ';port=' . Constantes::getInstance()->getConfig()['db']['port'] . ';dbname=' . Constantes::getInstance()->getConfig()['db']['dbname'], Constantes::getInstance()->getConfig()['db']['username'], Constantes::getInstance()->getConfig()['db']['password']);
28 $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
29 } catch (PDOException $e) {
30 die('Connexion a la BD échouée: ' . $e->getMessage());
31 }
32 }
33
38 public static function getInstance(): bd
39 {
40 if (self::$instance == null) {
41 self::$instance = new bd();
42 }
43 return self::$instance;
44 }
45
50 public function getConnexion(): pdo
51 {
52 return $this->pdo;
53 }
54
58 private function __clone() {}
59
64 public function __wakeup()
65 {
66 throw new Exception("Un singleton ne doit pas être deserialisé.");
67 }
68}
static getInstance()
Retourne l'instance unique de la classe Constantes (pattern Singleton).
Definition bd.class.php:8
static bd $instance
Definition bd.class.php:12
__construct()
Constructeur privé pour empêcher l'instanciation directe.
Definition bd.class.php:24
__clone()
Empêche le clonage du singleton.
Definition bd.class.php:58
PDO $pdo
Definition bd.class.php:17
getConnexion()
Retourne l'instance PDO de la connexion à la base de données.
Definition bd.class.php:50
static getInstance()
Retourne l'instance unique de la classe bd (pattern Singleton).
Definition bd.class.php:38
__wakeup()
Empêche la désérialisation du singleton.
Definition bd.class.php:64