appel continu de fonctions...

appel continu de fonctions... - PHP - Programmation

Marsh Posté le 29-09-2005 à 17:25:19    

bonjour,
 
j'ai un objet php qui avec une fonction me renvoie un autre objet sur lequel je souhaite appeler une fonction...
 
conctrètement je souhaite faire un truc du genre :
 

Code :
  1. $pere = new Pere();
  2. echo $pere->getFilsAine()->getAge();


où bien sûr la classe de l'objet renvoyé par getFilsAine() contient une méthode getAge()...
le seul moyen que j'ai trouvé pour le faire est :

Code :
  1. $pere = new Pere();
  2. $fils = $pere->getFilsAine();
  3. return $fils->getAge();


mais bon ça fait 2 instanciation en plus...
 
on peut raccourcir ??? (c'est un pb général... ici ce n'est qu'un exemple...)

Reply

Marsh Posté le 29-09-2005 à 17:25:19   

Reply

Marsh Posté le 29-09-2005 à 18:32:34    

Soit la réponse se trouve dans la question, soit j'ai rien pigé.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 29-09-2005 à 18:52:36    

Bah je dirais que la réponse est dans la question, en tout cas je vois pas comment raccourcire...


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Marsh Posté le 29-09-2005 à 19:30:43    

dwogsi a écrit :

Bah je dirais que la réponse est dans la question, en tout cas je vois pas comment raccourcire...


 
oui... exact.. j'ai pas été au bout des choses !!
le pb c que  

Code :
  1. $pere = new Pere();
  2. echo $pere->getFilsAine()->getAge();


ne marche pas...
est-ce donc normal ??

Reply

Marsh Posté le 29-09-2005 à 20:22:09    

Ca veut dire quoi, ça marche pas ? Ca affiche rien ? Erreur ?
 
Ca revient exactement au même que ce que tu fais plus haut dans ton exemple cela dit, à part qu'il y a un echo au lieu du return.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 30-09-2005 à 09:21:11    

titione a écrit :

ne marche pas...
est-ce donc normal ??


 
Bah return ou echo... Ca change rien!
Parceque comme l'a dit sielfried c'est la seule différence à noter.


Message édité par dwogsi le 30-09-2005 à 09:21:52

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Marsh Posté le 30-09-2005 à 09:27:04    

Et un truc du style

($pere->getFilsAine())->getAge()


?
Ou même

$($pere->getFilsAine())->getAge()


?
 
Enfin bon c'est là qu'on voit à quel point le modèle objet de PHP5 est à moitié fait [:pingouino]


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box, and replicate and expand beyond their wildest dreams by throwing away the limits imposed by overbearing genetic r
Reply

Marsh Posté le 30-09-2005 à 09:27:54    

A moins qu'il soit en PHP<5 ou la dereferensation est impossible si mes souvenirs sont bons


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 30-09-2005 à 09:29:00    

masklinn a écrit :

Et un truc du style

($pere->getFilsAine())->getAge()


?
Ou même

$($pere->getFilsAine())->getAge()


?
 
Enfin bon c'est là qu'on voit à quel point le modèle objet de PHP5 est à moitié fait [:pingouino]


 
Bah en php5 , faire un $objet->truc()->bidule(); est sencé marcher... d'ailleurs je l'utilise tres souvent [:pingouino]


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 30-09-2005 à 09:30:31    

Ok, donc il faut savoir si il serait pas en PHP4 quoi [:pingouino]


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box, and replicate and expand beyond their wildest dreams by throwing away the limits imposed by overbearing genetic r
Reply

Marsh Posté le 30-09-2005 à 09:30:31   

Reply

Marsh Posté le 30-09-2005 à 09:32:59    

Si quand les gens posaient une question ils pensaient a donner des elements aidant a repondre... Tient c'est un bon exemple pour la faq que je prepare


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 30-09-2005 à 11:32:13    

exact j'étais en php4... :(
la bonne réponse était donc : "A moins qu'il soit en PHP<5 ou la dereferensation est impossible si mes souvenirs sont bons"
désolé pour le manque de renseignements...  

Reply

Marsh Posté le 30-09-2005 à 11:43:29    

Bah voilà si on avait su ca plus tôt....


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Marsh Posté le 30-09-2005 à 11:47:20    

Donc bravo à esox pour avoir posé les bonnes questions :jap:


---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box, and replicate and expand beyond their wildest dreams by throwing away the limits imposed by overbearing genetic r
Reply

Marsh Posté le 30-09-2005 à 11:50:02    

:bounce:  :bounce:  :bounce:  
(Qqn a pas un smiley qui fait la fete sous la main? :D )


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 30-09-2005 à 11:50:44    

[:mesh]  
 
This one ?


---------------
http://www.alsacreations.com , http://www.openweb.eu.org. Mon CV : http://cv.roane-irkana.net/. Exemple à ne surtout pas suivre : www.worldinternet.be
Reply

Marsh Posté le 30-09-2005 à 11:52:21    

Pas mal :D Personne d'autre?


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 30-09-2005 à 11:52:38    

dwogsi : vi mais c'est justement l'intérêt du pb & l'intérêt des forums...  
si je l'avais su plus tôt, moi aussi je l'aurai trouvé...
 

Reply

Marsh Posté le 30-09-2005 à 11:52:45    

esox_ch a écrit :

Pas mal :D Personne d'autre?


Like this one :
http://www.softsharing.net/perso/forums/icon_pidu.gif
Au moins ya à boir!
 

titione a écrit :

dwogsi : vi mais c'est justement l'intérêt du pb & l'intérêt des forums...  
si je l'avais su plus tôt, moi aussi je l'aurai trouvé...


 
Certes oui!


Message édité par dwogsi le 30-09-2005 à 11:58:03

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed