Retypage dynamique d'objets en PHP

WRInaute accro
Petite question de PHP.

Est-il possible de "retyper" dynamiquement un objet (au sein d'un ensemble d'objets ayant la même interface).

Exemple pédagogique ;-): j'ai les objets Schtroumph, Schtroumphette et Gargamel. J'instancie Schtroumph. Un traitement révèle que le Schtroumph est en fait une femme. Est-il possible d'alors retyper l'objet en Schtroumphette?
 
WRInaute impliqué
Tient la réponse m'intéresse mais bizarrement je ne vois pas dans ce sens comment cela pourrait être possible.

Autant passer de Schtroumphette à Schtroumph, ça ne pose pas de pb, autant dans l'autre sens, il va manquer des données.


Edit. Enfin cela dépend en fait. Schtroumphette est une classe fille de Schtroumph ou pas ??
 
WRInaute accro
En fait, l'idée est que tous ces objets aient la même interface. Donc, ils sont interchangeables dans le code principal de l'application.
 
WRInaute impliqué
Si toutes leurs méthodes et toutes leurs propriétés sont identiques, ils devraient tous dépendre de la même classe mère.
 
WRInaute accro
petit-ourson a dit:
Si toutes leurs méthodes et toutes leurs propriétés sont identiques, ils devraient tous dépendre de la même classe mère.

C'est pas encore le cas, mais ça va en effet l'être sous peu (il y a des méthodes communes, par exemple pour la visualisation des données présentes dans l'objet).
 
WRInaute accro
A la réflexion, je me pose une autre question: peut-on spécialiser un objet en cours de route.

Exemple: transformer la classe "personnage_de_bede" en "schroumph"?
 
Discussions similaires
Haut