Nouveau sujet Répondre Imprimer Syndication RSS 2.0

Utilisation des classes PHP

Equipe des MODS
Avatar de Met@lnono
  • Age : 26 ans
  • Messages : 1184
  • Inscrit : 17 Octobre 2005
  Lien vers ce message 08 Avril 2008, 13:23

Reprise du dernier message

Ou d'utiliser un singleton ? (dites moi si je dis une connerie, chui pas très à l'aise avec les designs patterns)
Moi non plus donc je vais rester simple au début...

Merci pour les infos :D


 
Equipe de support
Avatar de Shekral
  • Age : 23 ans
  • Messages : 921
  • Inscrit : 25 Février 2006
Message édité 1 fois, dernière édition par Shekral, 08 Avril 2008, 13:35     Lien vers ce message 08 Avril 2008, 13:35
Ou d'utiliser un singleton ? (dites moi si je dis une connerie, chui pas très à l'aise avec les designs patterns)
Moi non plus donc je vais rester simple au début...

Merci pour les infos :D

C'est pas forcément plus compliqué et c'est surtout beaucoup plus propre.
Le principe du singleton, c'est une classe pour laquelle tu ne pourra avoir à tout moment qu'une seule instance maximum, donc tout à fait adapté à une connexion vers ta base.
Pour entrer un peu plus dans le détails, l'implémentation se fait généralement de la manière suivante :
- l'instance en attribut privée static de la classe,
- le constructeur en privée pour éviter un appel extérieur,
- une méthode getInstance(), qui renvoie l'instance et s'occupe d'appeler le constructeur si elle n'existe pas encore.


WikiFSB
 
Volcan
Avatar de Sékiltoyai
  • Age : 20 ans
  • Messages : 1002
  • Inscrit : 19 Septembre 2006
  Lien vers ce message 08 Avril 2008, 13:43
L'inconvénient du singleton dans ce cas, c'est que tu n'as pas le droit d'avoir 2 connexions mysql (c'est très rare, mais ca peut être utile ou nécessaire…)


http://www.phpfrance.com : Support francophone PHP et Web.
http://sekil.labrute.fr/
 
Equipe des MODS
Avatar de Met@lnono
  • Age : 26 ans
  • Messages : 1184
  • Inscrit : 17 Octobre 2005
  Lien vers ce message 08 Avril 2008, 13:44
OK je vais chercher des infos là dessus.


 
Equipe de support
Avatar de Shekral
  • Age : 23 ans
  • Messages : 921
  • Inscrit : 25 Février 2006
  Lien vers ce message 08 Avril 2008, 13:51
L'inconvénient du singleton dans ce cas, c'est que tu n'as pas le droit d'avoir 2 connexions mysql (c'est très rare, mais ca peut être utile ou nécessaire…)

C'est vrai. C'est à implémenter en fonction des besoins.
Dans tous les cas, il vaut mieux que ça ne soit pas la classe user qui crée l'instance de la classe de connexion à la base.


WikiFSB
 
Equipe des MODS
Avatar de Met@lnono
  • Age : 26 ans
  • Messages : 1184
  • Inscrit : 17 Octobre 2005
  Lien vers ce message 08 Avril 2008, 15:51
Dans tous les cas, il vaut mieux que ça ne soit pas la classe user qui crée l'instance de la classe de connexion à la base.
Ah OK, il vaut mieux donc passer la connexion en paramètre aux méthodes de la classe 'user'.


 
Volcan
Avatar de Sékiltoyai
  • Age : 20 ans
  • Messages : 1002
  • Inscrit : 19 Septembre 2006
  Lien vers ce message 08 Avril 2008, 16:47
Dans tous les cas, il vaut mieux que ça ne soit pas la classe user qui crée l'instance de la classe de connexion à la base.
Ah OK, il vaut mieux donc passer la connexion en paramètre aux méthodes de la classe 'user'.

Non, en paramètre du constructeur


http://www.phpfrance.com : Support francophone PHP et Web.
http://sekil.labrute.fr/
 
Etoile
Avatar de BlackJowy
  • Age : 22 ans
  • Messages : 3304
  • Inscrit : 01 Mars 2007
  Lien vers ce message 08 Avril 2008, 17:14
C'est clair que si tu le fais à chaque méthode ça devient lourd :D


"It's backup day today so I'm pissed off. Being the BOFH, however, does have it's advantages. I reassign null to be the tape device — it's so much more economical on my time as I don't have to keep getting up to change tapes every 5 minutes. And it speeds up backups too, so it can't be all bad can it? Of course not." S.Travaglia

 
Répondre


.