Un article par jour pendant une semaine. Je m’y tiens autant que faire ce peut à ce rythme. Aujourd’hui donc ; 4éme jour. Et voici la suite de notre série de billets consacré à la Programmation Orienté Object avec PHP.
Les concepts généraux de la POO (suite)
Les éléments Statiques
Un élément statique ; sera le même pour toutes les instances d’une même classe. Il peut aussi bien être une propriété ou une méthode. Et sera défini comme statique par le mot clé static. C’est en fait exactement le même principe que les variables statique au sein des fonctions ; sauf qu’ici cela s’applique aussi à vos classes.
Les propriétés statique
Si vous définissez une propriété comme statique ; elle aura toujours la même valeur ; quelle que soit les instances de votre classe. Et vous pourrez même la modifier ou la lire sans passer par l’une de ses instances.
Pour accéder ces propriétés statiques ; il est conseillé d’utiliser l’opérateur de résolution de portée.
Pour plus d’informations : http://fr.php.net/manual/fr/language.oop5.paamayim-nekudotayim.php.
Dans notre exemple ; si je définis la propriété Stylo ::couleur comme statique ; l’effet sera le suivant :
Class Stylo {
static public $couleur ;
}
// Je crée un stylo ; puis je met la couleur à FF00FF
$stylo1 = new Stylo() ;
$stylo1->couleur = ‘#FF00FF’ ;
// Je crée un autre stylo ; puis je change la couleur pour 00FFFF
$stylo2 = new Stylo() ;
$stylo2->couleur = ‘#00FFFF’ ;
// J’affiche la couleur des deux stylos.
echo $stylo1->couleur ; // Affiche #00FFFF
echo $stylo2->couleur ; // Affiche #00FFFF
// Je change encore une fois la couleur
Stylo::couleur = ‘#000000’;
echo $stylo1->couleur ; // Affiche #000000
echo $stylo2->couleur ; // Affiche #000000
Les méthodes statique
Les méthodes statiques sont utilisées généralement pour définir plus d’un constructeur. Nous ne attarderons pas plus dessus dans cet article. Sachez simplement qu’elles existent.
Lire la suite...
