Introduction
Le langage PHP n'étant pas à l'origine construit pour supporté les classes, d'où la résultant d'un support partiel seulement à partir de la version 4 et d'un support sérieux avec la version 5, à certain manque dans la possibilité des classes. Pour définir une classe, on utilise le mot réservé «class» en minuscule.
Classe vide
Tout d'abord, pour définir une classe vide sans aucun héritage, on doit utiliser la syntaxe est la suivante :
class nomdelaclasse { } |
Ensuite, pour définir une classe vide avec un héritage, on doit utiliser la syntaxe suivante :
class nomdelaclasse extends classeparente { } |
Classe avec fonctions ou procédures
Tout d'abord, pour définir une classe avec une ou plusieurs fonction(s) ou procédure(s) sans aucun héritage, on doit utiliser la syntaxe est la suivante :
class nomdelaclasse { function nomdeprocédure1(paramètres) { instruction_exécuté1; instruction_exécuté2; instruction_exécuté3; ... } function nomdeprocédure2(paramètres) { instruction_exécuté1; instruction_exécuté2; instruction_exécuté3; ... } ... } |
Ensuite, pour définir une classe avec une ou plusieurs fonction(s) ou procédure(s) avec un héritage, on doit utiliser la syntaxe suivante :
class nomdelaclasse extends classeparente { function nomdeprocédure1(paramètres) { instruction_exécuté1; instruction_exécuté2; instruction_exécuté3; ...; } function nomdeprocédure2(paramètres) { instruction_exécuté1; instruction_exécuté2; instruction_exécuté3; ...; } ... } |
Constructeur d'une classe
Comme tous les langages de programmation supportant un minimum de programmation orientée objet (POO), il est possible de créer une fonction permettant d'initialiser la classe (aussi appelé constructeur de classe) lors de la création de la classe objet. Le nom de la classe doit être utilisé dans la définition d'une fonction. Voici sa syntaxe :
class nomdelaclasse extends classeparente { function nomdelaclasse(paramètres) { instruction_exécuté1; instruction_exécuté2; instruction_exécuté3; ...; } function nomdeprocédure1(paramètres) { instruction_exécuté1; instruction_exécuté2; instruction_exécuté3; ... } ... } |
Mot réservé particulier
Vous pouvez utiliser la variable réservé «$this» lequel fait référence à la classe courante dans lequel vous vous trouvez.
Création d'un objet de classe
Vous pouvez créer une classe à l'aide du mot réservé «new» :
$monobjet = new nomdelaclasse; $monobjet->nomdeprocédure1(); |
Exemple
Cet exemple permet de montrer un simple créer d'une classe avec une valeur modifiable ou lisable :
Essayer maintenant !
on obtiendra le résultat suivant :
Résultat de A dans la classe courante = 18