Declaration d'attributs

Eléphanteau du PHP | 38 Messages

20 avr. 2007, 09:59

Bonjour,

Voila le problème :

Je crée une classe, et donc evidemment, cette classe contient attributs et méthodes.
Je veux que ces attributs soient privés, au départ je faisais donc ca :
private $attribut ;
Mais j'ai lu, sur divers sites et tutos que pour déclarer un attribut, il fallait faire :
var $attribut ;
Je test, et ca marche. J'essais donc en faisant :
private var $attributs ;
Ca marche pas, j'essais dans l'autre sens (ben oui, on sait jamais :lol: ) :
var private $attributs ;
Et bien sur, ca marche toujours pas...
Alors, la bonne solution pour déclarer un attribut en priver en php5 c'est laquelle ?? Je suppose que c'est la première que j'utilisais, mais l'autre c'est quoi, c'est pour quoi... ??

Merci d'avance

Mammouth du PHP | 505 Messages

20 avr. 2007, 10:16

le mot clé var vient de php4.
si tu met var $attribut, cela revient a faire public $attribut.

Oublie var. Utilise public, protected ou private.

Eléphant du PHP | 135 Messages

20 avr. 2007, 10:33

public|private|protected c'est en PHP5

si tu les utilises, ta classe ne fonctionnera pas sous PHP4
d'où l'utilité (au début début de php5 du moins) d'utiliser "var".

Maintenant, étant donné que php5 est sur la plus part des hébergeurs. Je ne penses pas que ça soit encore vraiment utile... Si d'autres pouvaient donner leurs avis:)
Modifié en dernier par Erazer le 20 avr. 2007, 16:50, modifié 1 fois.

Mammouth du PHP | 505 Messages

20 avr. 2007, 13:31

En meme temps, erazer, on est sur le forum php5... On peut donc supposer que les gens qui postent ici sont en php5 ou posent une question ayant trait a php5....

Eléphant du PHP | 135 Messages

20 avr. 2007, 16:52

Et? :)
pas le peine de répondre

Eléphanteau du PHP | 38 Messages

20 avr. 2007, 17:15

:roll: Hey, pas de guerre ouverte ici :lol:

Donc, pas de var, sauf si l'hebergeur ne propose pas php5. Merci pour vos réponses !! :D

Mammouth du PHP | 19672 Messages

20 avr. 2007, 17:20

En fait, ce qu'il est important de saisir, c'est que PHP5 apporte des notions inexistantes en PHP4 : private, protected et public. En PHP4, les propriétés sont publiques par défaut, tout comme les méthodes du reste.

Donc si ton hébergement est en PHP4, attention lorsque tu mets du code, certains éléments du PHP5 ne fonctionneront pas, surtout en Programmation Orientée Objet. L'inverse ne devrait en revanche pas vraiment être un problème.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: