Portée
Introduction à la programmation orientée objet en PHP
Accéder à une méthode parent
Parfois, il va pouvoir être intéressant d'accéder à la définition de base d'une propriété ou d'une méthode surchargée. Pour faire cela, on va pouvoir utiliser l'opérateur de résolution de portée qui est symbolisé par le signe :: (double deux points).
La méthode getNom() de notre classe mère Utilisateur est modifiée afin qu'elle echo la nom de l'objet l'appelant plutôt qu'utiliser une instruction return (qui empêcherait l'exécution de tout code après l'instruction).
La classes/utilisateur.class.php//...
public function getNom(){
echo $this->user_name; // avant : return $this->user_name;
}
//...
Le mot clef parent(1) va nous servir à indiquer qu'on souhaite accéder à la définition de la propriété ou de la méthode faite dans la classe mère.
Le fichier classes/admin.class.php//...
public function getNom(){
echo ' Nom de l\'admin (depuis la classe étendue) : ';
parent::getNom();
}
//...
____________________
1. Nous allons également devoir utiliser cet opérateur de résolution de portée pour accéder aux constantes et aux méthodes et propriétés définies comme statiques dans une classe avec les mots clés self et static