J'ai une classe Handler qui ressemble à ceci :
class Handler{
public $group;
public function __construct(){
$this->group = $this->database->mysql_fetch_data("blabla query");
//if i print_r($this->group) here it gives proper result
new ChildClass();
}
public function userGroup(){
print_r($this->group); //this is empty
return $this->group;
}
}
class ChildClass extends Handler{
public function __construct(){
$this->userGroup();
//i tried this too
parent::userGroup();
//userGroup from parent always returns empty
}
}
Flux de travail :
-
Le gestionnaire est appelé à partir de mon index.php et la __construction est appelée
-
Le gestionnaire doit créer $group
-
Le gestionnaire crée une classe enfant
-
La classe enfant appelle la fonction Handler
-
Lorsque j'essaie de retourner $group dans la fonction, il tente de récupérer $this->group à partir de Child au lieu de Handler.
Lorsque j'essaie de demander quelque chose au parent, je ne peux accéder qu'à la fonction parent, puis à l'intérieur de la fonction, la classe parent ne trouve aucune de ses propres variables.
EDIT :
Je pensais que l'utilisation de 'extends' serait utile pour appeler les fonctions parentales, mais il semble que le passage de $this à l'enfant soit plus simple.