Que sont les constantes de classe OOP en PHP ?

Que Sont Les Constantes De Classe Oop En Php



Un paradigme de programmation connu sous le nom de programmation orientée objet (POO) permet aux utilisateurs d'écrire des programmes modulaires et réutilisables. Constant l'utilisation au sein d'une classe est l'une des caractéristiques de la POO. Constantes de classe en PHP sont des valeurs qui ne peuvent pas être modifiées après avoir été spécifiées. Ils sont membres de la classe et ne sont associés à aucune instance de classe spécifique.

Que sont les constantes de classe en PHP ?

Pour commencer, Constantes de classe faire référence à une valeur qui reste constante au cours d'un script. En POO, il permet au programmeur de définir une valeur qui a une signification spécifique au sein de la classe et qui ne peut être mise à jour par aucune des méthodes de classe. Le constante mot-clé est utilisé pour spécifier constantes de classe , qui reçoivent une valeur constante au cours du script.







UN constante de classe est une valeur définie dans une classe qui reste constante tout au long de l'exécution du programme. Le terme constante est utilisé pour les définir, suivi du nom et de la valeur de cette constante. Une fois définis, ils ne peuvent pas être modifiés pendant l'exécution.



Par exemple, nous pouvons définir un constante de classe pour la valeur de Pi de la manière suivante :



cours de mathématiques {
PI const = 3.14 ;
}


Ici, nous avons défini la constante de classe PI pour le cours de mathématiques comme 3.14. Puisqu'une constante est liée à la classe et non à une instance d'une classe, nous pouvons y accéder sans instance comme dans :





écho Mathématiques :: PI ;


Par rapport aux variables régulières, constantes de classe présentent quelques différences notables. Premièrement, ils sont immuables, c'est-à-dire qu'ils ne peuvent pas être modifiés une fois définis. Deuxièmement, valeurs constantes sont sensibles à la casse, contrairement aux variables en PHP. De plus, les constantes sont définies à l'aide de la constante mot-clé, alors que les variables utilisent le était mot-clé, qui est une distinction importante.

Accéder aux constantes de classe

Accès constantes de classe peut se faire de deux manières.



1 : Utilisation de la résolution de l'oscilloscope ( : :)

Premièrement, le constantes de classe être accessible à l'aide de la résolution de portée (::) opérateur, comme dans :

Nom de la classe ::CONSTANT_NAME


Regardez un exemple :

< ?php
personne de classe {
nom constant = 'Larry' ;
Âge constant = 32 ;
const Nationalité = 'Américain' ;
}
écho Nom d'une personne, ' \n ' ;
écho Personnage, ' \n ' ;
écho Personne ::Nationalité ;
? >


Dans le code ci-dessus, le Personne la classe spécifie le nom, l'âge et la nationalité comme trois constantes . Chaque constante a une chaîne ou une valeur entière définie pour elle.

Le :: L'opérateur est utilisé conjointement avec le nom de la constante pour accéder à la valeur d'une constante de classe. Par exemple, nous utilisons la syntaxe Nom d'une personne pour récupérer la valeur de Nom constant.

Enfin, nous imprimons les valeurs des constantes Nom, Âge et Nationalité à l'écran à l'aide de la commande echo.

2 : Utiliser le mot-clé 'self'

Alternativement, nous pouvons également accéder à la constantes de classe au sein de la classe elle-même en utilisant le `soi` mot-clé suivi du nom de la constante indiqué ci-dessous :

moi-même :: CONSTANT_NAME


Regardez un exemple pour accéder à une constante en utilisant le soi mot-clé.

< ?php
cercle de classe {
PI const = 3.14159 ;
privé $rayon ;
public fonction __construction ( $rayon ) {
$ceci - > rayon = $rayon ;
}
public fonction Zone ( ) {
retour soi ::PI * $ceci - > rayon * $ceci - > rayon;
}
}
$cercle = nouveau Cercle ( 16 ) ;
écho $cercle - > Zone ( ) ;
? >


Dans cet exemple ci-dessus, une classe nommée Circle spécifie une propriété privée appelée $radius et une constante appelée PI. La formule utilisée par le getZone() fonction pour obtenir l'aire d'un cercle est PI * rayon * rayon , où PI est la valeur de la constante PI et radius est la valeur du paramètre $radius.

Au sein de la getZone() méthode, nous utilisons la soi mot clé suivi du nom de la constante pour obtenir la valeur de la constante PI : soi :: PI .


Il y a quelques considérations à garder à l'esprit lors de la définition constantes de classe . Tout d'abord, assurez-vous que le nom de la constante de classe est unique dans la classe. Deuxièmement, il doit respecter les mêmes conventions de dénomination que les noms de classe, c'est-à-dire utiliser Camel Case pour les constantes. Enfin, il est recommandé de ne définir que des valeurs scalaires, telles que des entiers et des chaînes, comme constantes de classe .

Héritage des constantes de classe

Une autre caractéristique importante de constantes de classe est qu'elles peuvent être héritées par les classes enfants. Essentiellement, une sous-classe peut accéder aux valeurs constantes définies par sa classe parent en utilisant le parent mot-clé. Par exemple:

< ?php
classe Animaux {
const ANIMAL_TYPE = 'mammifère' ;
}
la classe Chien étend Animal {
public fonction obtenirType ( ) {
écho 'Le chien est un' , parent ::ANIMAL_TYPE ;
}
}
$chien = nouveau chien ( ) ;
$chien - > obtenirType ( ) ;
? >


Dans cette illustration, la classe Animal a une constante avec la valeur ' mammifère ' nommé ANIMAL_TYPE . Le Chien est une sous-classe dérivée de la classe Animal.

La fonction publique getType() de la classe Dog renvoie simplement la valeur de la UN NIMAL_TYPE constante en accédant à la constante de la classe parent à l'aide de la parent :: mot clé .

Enfin, nous construisons un objet de classe Dog et utilisons la getType() fonction, qui renvoie la valeur de la constante héritée de la classe Animal ANIMAL_TYPE .

Conclusion

L'utilisation de constantes de classe est un élément clé de la programmation orientée objet en PHP et dans d'autres langages de programmation . En utilisant constantes de classe , nous pouvons éviter les valeurs codées en dur dans le programme, ce qui peut être fastidieux lors de la mise à jour du code. Il est important de respecter les conventions de nommage et de garder à l'esprit l'accessibilité des constantes de classe dans le programme lors de leur définition.