static PDO - Connection MySQL
Posté : 20 janv. 2014, 14:40
Salut à tous!
Jadis, lors de ma formation, on nous a fait implémenter un PDO en singleton, du style :
J'ai quelques questions vis à vis de cela...
- L'instance de PDO est bien détruite à la fin du script, malgré le static? Il parait logique que oui, mais avec ce qu'on nous a dit, je garde un doute ^^
- Si l'instance est détruite à la fin du script, alors la connexion est persistante pour le script en cours et il reviendrait au même d'ouvrir le PDO au début du script, non?
- Pour avoir une connexion persistante, j'ai vu qu'on pouvait préciser un attribut au driver au moment de son instanciation! Mais, à ce moment, chaque client qui se connecte ouvre sa propre connexion persistante, non?
- Y a-t-il un moyen d'ouvrir une connexion persistante partagée par tous? Sérialisation dans un fichier? Et est-ce que ça parait être une bonne idée?
Merci à vous!
Bonne aprèm'!
Jadis, lors de ma formation, on nous a fait implémenter un PDO en singleton, du style :
class DB {
static $pdo = null;
public static function getInstance() {
if (!(self::$instance instanceof PDO)) self::$instance = new PDO();
return self::$instance;
}
}
On nous a dit que ça permettait d'avoir une connexion persistante!J'ai quelques questions vis à vis de cela...
- L'instance de PDO est bien détruite à la fin du script, malgré le static? Il parait logique que oui, mais avec ce qu'on nous a dit, je garde un doute ^^
- Si l'instance est détruite à la fin du script, alors la connexion est persistante pour le script en cours et il reviendrait au même d'ouvrir le PDO au début du script, non?
- Pour avoir une connexion persistante, j'ai vu qu'on pouvait préciser un attribut au driver au moment de son instanciation! Mais, à ce moment, chaque client qui se connecte ouvre sa propre connexion persistante, non?
- Y a-t-il un moyen d'ouvrir une connexion persistante partagée par tous? Sérialisation dans un fichier? Et est-ce que ça parait être une bonne idée?
Merci à vous!
Bonne aprèm'!