Le but de cette extension est de permettre de maîtriser les appels aux méthodes et aux membres d'un objet. Seule une fonction est définie dans cette extension, overload() qui demande le nom de la classe qui supporte cet fonctionnalité. Cette classe doit être pourvue des méthodes nécessaires au bon fonctionnement de l'extension, c'est à dire : __get(), __set() et __call(), qui servent respectivement à lire et modifier un membre, et appeler une méthode. De cette manière, l'overloading assure un contrôle sur les fonctions appelées. A l'intérieur de ces méthodes, l'overloading est désactivé, pour que vous puissiez accéder à l'objet.
Avertissement |
Ce module est EXPERIMENTAL. Cela signifie que le comportement de ces fonctions, leurs noms et concrètement, TOUT ce qui est documenté ici peut changer dans un futur proche, SANS PREAVIS! Soyez-en conscient, et utilisez ce module à vos risques et périls. |
In order to use these functions, you must compile PHP with the --enable-overload option. Starting with PHP 4.3.0 this extension is enabled by default. You can disable overload support with --disable--overload.
La version Windows de PHP dispose du support automatique de cette extension. Vous n'avez pas à ajouter de librairie supplémentaire pour disposer de ces fonctions.
Note : Builtin support for overload is available with PHP 4.3.0.
Voici un exemple simple de fonctions utilisant overload() :
Avertissement |
Comme c'est une extension expérimentale, tout ne fonctionne pas encore. Il n'y a pas de support pour __call() actuellement, et nouvs ne pouvez overloader que des accesseurs. Vous ne pouvez pas appeler les fonctions d'overload de la classe, et __set() ne fonctionne que pour un seul niveau d'accesseur. |
Précédent | Sommaire | Suivant |
ob_start | Niveau supérieur | overload |