bonjour à tous,
j essaie de recuperer des données d'un objet membre et j ai ce message d erreur qui me laisse perplexe :
"Fatal error: Call to a member function getX() on a non-object "
voici le code...
j ai une premiere classe
et c'est de celle ci que l erreur provient
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 class Point{ //ATTRIBUTS private $x; private $y; //CONSTRUCTEURS public function __construct($x,$y){ $this->x=$x; $this->y=$y; } //METHODES public function getX(){ return $this->x; } public function getY(){ return $this->y; } // .... }
il s agit ici de la derniere solution que j ai essayé (cad $pt en public...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 class Rectangle{ //ATTRIBUTS public $pt; private $dim; //CONSTRUCTEURS public function __construct(Point $p,Dimension $d){ $pt=$p; echo '<br/>'.$pt->getX();//pas d'erreur $dim=$d; } // ... public function getX(){ echo '<br/>'.$pt->getX();//erreur return $pt->getX(); //erreur }
je ne vous fais pas la liste des idées saugrenues que j ai pu avoir...
variable tampon de type Point, transtypage, $this->pt->getX(), ...
pourquoi il ne s'agit pas d un objet en dehors du constructeur?
bref comment peut on realiser quelque chose qui parait aussi simple de maniere sans doute un peu plus compliquée?
merci d'avance pour toute aide, mon etat present est : foo(totensai);![]()
PS inutile de vous preciser que j ai le meme probleme avec l attribut $dim![]()
Partager