diff options
Diffstat (limited to 'php/Connection.php')
| -rw-r--r-- | php/Connection.php | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/php/Connection.php b/php/Connection.php index bdc7aa9..e944f69 100644 --- a/php/Connection.php +++ b/php/Connection.php | |||
| @@ -1,16 +1,26 @@ | |||
| 1 | <?php | 1 | <?php |
| 2 | // php/Connection.php | 2 | // php/Connection.php |
| 3 | 3 | ||
| 4 | // cette classe suit le pattern "singleton" | ||
| 5 | // but: ne permettre qu'une seule instance de la classe (laquelle sera éventuellement globale) | ||
| 6 | |||
| 7 | // comment? | ||
| 8 | // - Un attribut privé et statique qui conservera l'instance unique de la classe | ||
| 9 | // ainsi si un enfant de la classe "connection" est instancié plusieurs fois, il n'y aura toujours qu'une seule instance de PDO | ||
| 10 | // - Un constructeur privé afin d'empêcher la création d'objet depuis l'extérieur de la classe | ||
| 11 | // - Une méthode statique qui permet soit d'instancier la classe soit de retourner l'unique instance créée. | ||
| 12 | // impossible de créer deux instances (ici de PDO) | ||
| 13 | |||
| 4 | class Connection extends PDO | 14 | class Connection extends PDO |
| 5 | { | 15 | { |
| 6 | // paramètres du constructeur de PDO, avec sqlite seul le premier est nécessaire | 16 | // paramètres du constructeur de PDO, avec sqlite seul le premier est nécessaire |
| 7 | public static $dsn = ''; // Data Source Name = 1er paramètre | 17 | public static $dsn = ''; // Data Source Name = 1er paramètre |
| 8 | public static $user = ''; | 18 | //~ public static $user = ''; |
| 9 | public static $password = ''; | 19 | //~ public static $password = ''; |
| 10 | public static $options = ''; | 20 | //~ public static $options = ''; |
| 11 | private static $Instance; | 21 | private static $Instance; |
| 12 | 22 | ||
| 13 | public function __construct() | 23 | private function __construct() |
| 14 | { | 24 | { |
| 15 | try | 25 | try |
| 16 | { | 26 | { |
