Tu as deux exemples d'utilisation dans ce topicSalut tout le monde,
Je n'ai pas bien saisie l'utilisation de static dans les propriétés et méthodes. Dans quel cas peut on l'uitilser ? Pouvez vous m'en dire d'avantage SVP.
Par avance merci et bonne journée à vous.
Ta réponse, je la trouve pertinente et je t'en remercie.Tu as deux exemples d'utilisation dans ce topic
$oracle = new MaBase($dsnOracle);
$mysql = new MaBase($dsnMysql);
//etc.
$instance et getInstance doit être static, c'est pour éviter des erreurs de traitement si on reste sur un seul modèle ($connectionBase = new maBase($dsn)) ? D'ailleurs, je pense qu'il est bon d'étendre pdo vers un Singleton, non ?Oui et non. Il y a 2 ou 3 ans je t'aurais dit oui, mais aujourd'hui la mode est à l'utilisation de registres de données (d'ailleurs une grande majorité des singletons de Zend Framework va être retirée pour la version 2). Ces fameux registres permettent une utilisation plus souple de tes classes. Aujourd'hui je vois, il m'arrive d'utiliser 2 voire 4 connexions PDO différentes (par paire pour mettre en place une archi master/slave) ce qui n'est pas possible avec des singletons !D'ailleurs, je pense qu'il est bon d'étendre pdo vers un Singleton, non ?
C'est en rapport avec les privilèges d'accès à la ou aux bases de données non ?... Aujourd'hui je vois, il m'arrive d'utiliser 2 voire 4 connexions PDO différentes (par paire pour mettre en place une archi master/slave) ce qui n'est pas possible avec des singletons !
Je crois avoir saisie mais dans ce cas là, il n'y a pas un design pattern approprié ? Je pense à un factory mais je fais peut être fausse route ?Etant donnée que l'architecture oblige d'utiliser plusieurs serveurs de base de données, les paramètres de connexion diffèrent à chaque fois. Si j'utilisais un singleton pour ma connexion, je ne pourrais accéder qu'à un seul serveur. Si je n'ai besoin que d'une instance PDO pour chacun des serveurs, ce n'est pas singleton ! D'où l'utilisation de registre pour stocker mes instances et pouvoir les réutiliser.
D'ailleurs, je pense qu'il est bon d'étendre pdo vers un Singleton, non ? Bonne soirée ^^
Tout est dit dans cette phrase. Ni plus ni moins.A toi de faire ton choix en fonction de tes besoins.