downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Les espaces de noms> <Sérialisation d'objets
[edit] Last updated: Fri, 25 May 2012

view this page in

Modifications en POO (Programmation orientée objet)

Les changements du modèle objet de PHP5 sont recensés ici. Plus d'informations et quelques notes peuvent être trouvées dans la documentation sur la POO en PHP5.

Version Description
5.4.0 Modification : Si une classe abstraite définit une signature pour le constructeur, elle sera désormais appliquée.
5.3.3 Changement : Les méthodes ayant le même nom que la classe dans un espace de noms ne sont plus considérées comme constructeur. Ce changement n'affecte pas les classes sans espace de nom.
5.3.0 Changement : Les interfaces définissant des méthodes ayant un prototype avec des arguments obligatoires peuvent être implémentées dans les classes avec un argument facultatif sans erreur.
5.3.0 Changement : Il est maintenant possible de référencer une classe en utilisant une variable (ex: echo $classname::constant;). La valeur de la variable ne peut être un mot-clé (ex: self, parent ou static).
5.3.0 Changement : Une erreur de niveau E_WARNING est levée si les méthodes magiques de surcharge sont déclarées statiques. La visibilité publique est aussi requise.
5.3.0 Changement : Avant 5.3.0, les exceptions lancées dans la fonction __autoload() ne pouvaient être traitées dans un bloc catch et résultaient en une erreur fatale. Maintenant les exceptions levées dans la fonction __autoload peuvent être attrapées dans un bloc catch et traitées. Si une exception personnalisée est lancée, alors sa classe doit être disponible. La fonction __autoload peut par contre être utilisée recursivement pour autocharger la classe d'exception personnalisée.
5.3.0 Ajout de la méthode magique __callStatic.
5.3.0 Ajout : heredoc et nowdoc sont supportées pour définir les constantes de classes et les propriétés. Note: Les valeurs heredoc ne doivent pas contenir de variables.
5.3.0 Ajout du Late Static Bindings (résolution statique tardive).
5.3.0 Ajout de la méthode magique __invoke().
5.2.0 Changement: La méthode magique __toString() n'était appelée que lors des appels à echo ou print. Maintenant, elle l'est dans n'importe quel contexte de chaîne (ex: dans printf() avec %s) mais pas dans les autres contextes (ex: avec le modificateur %d). Depuis PHP 5.2.0, convertir un objet en chaîne sans méthode __toString émet une erreur E_RECOVERABLE_ERROR.
5.1.3 Changement: Dans les versions antérieures de PHP 5, l'utilisation de var était considérée comme obsolète et envoyait une erreur E_STRICT. Ce n'est plus le cas.
5.1.0 Changement: La méthode magique statique __set_state() est maintenant appelée pour les classes exportées via var_export().
5.1.0 Ajout des méthodes magiques __isset() et __unset().



add a note add a note User Contributed Notes Modifications en POO (Programmation orientée objet)
There are no user contributed notes for this page.

 
show source | credits | sitemap | contact | advertising | mirror sites