URL: https://linuxfr.org/forums/programmation-php/posts/bug-dans-la-poo Title: Bug dans la POO ? Authors: Julien Portalier Date: 2004年07月21日T04:50:47+02:00 Tags: Score: 0 Je viens de tomber sur un bug étrange dans PHP4, et je me questionne. Celui-ci se trouve dans la Programmation Orientée Objet (POO). J'ai tout simplement deux classes : BiduleNews et BiduleStructuredText. Je crée un objet « _$news = new BiduleNews;_ ». Une fonction de BiduleNews appelle directement une fonction de BiduleStructuredText, comme ça : « _$body = BiduleStructuredtext::XHTML( $_POST['body'] );_ ». Jusque là, aucun problème du tout. Sauf que normalement dans la fonction BiduleStructuredText::XHTML() ainsi appelée, je ne dois pas avoir de $this, ce qui est fort normal. D'ailleurs lorsque j'appelle cette fonction directement hors d'une classe, $this n'existe pas. Seulement dans mon cas sus expliqué : ce n'est pas le cas ! Et oui, je me retrouve avec un $this dans BiduleStructuredText::XHTML() ! Un petit coup de « _echo get_class( $this );_ » m'affiche « BiduleNews » ... Ainsi $this se passe d'une instance à une autre qui 1- n'a strictement rien à voir ; et 2- qui ne devrait pas en avoir ! Y'aurait pas comme un bug là ?!