Facebook LinkedIn SourceForge Twitter RSS LastFM
logologo

PHP 5.2.9 améliore la méthode magique __call()

Geoffray Warnants|02/03/2009|1 commentaire

Avec quelques jours de retard, je viens de tester les amliorations mineures apportes par la toute fraiche release 5.2.9 de PHP, dernire ligne droite avant la trs attendue 5.3. Outre les corrections de plusieurs bugs, cette nouvelle version prsente une lgre amlioration du comportement de la mthode magique __call() vis vis des mthodes prives et protges. Ainsi, sous les versions antrieures 5.2.9, l'exemple suivant se soldait par une toute belle Fatal error: Call to private method Foo::bar() from context ''

<?php
class Foo {
    public function __call($method, $args) {
        if (method_exists($this, $method)) {
            call_user_func_array(array($this, $method), $args);
        }
    }
    private function bar() {
        echo 'Hello';
    }
}

$foo = new Foo();
$foo->bar();
?>

Bonne nouvelle : cet agaant comportement que tout un chacun a probablement dj rencontr fait dsormais partie du pass.

<<< Retour

Vos commentaires

1 commentaire post

Betty Lechat
16/09/2020 04:27Post par Betty Lechat
En termes d?informatique, j?avoue que je suis complètement nul. Mais j?ai essayé d?apprendre certaines bases en consultant votre site, et je suis fier de moi. Mais cela n?aurait pas été possible sans votre travail. Merci beaucoup?!

Ragir cet article

*


(Ne sera pas publie, servira uniquement afficher votre gravatar)


(Lien en dur et dofollow)

zend framework