PHP 5.3 Méthode magique __invoke

Cette rubrique s'étend sur Quand dois/devrais-je utiliser le __construct(), __get(), __set () et __call() en PHP? qui parle de la __construct__get et __set méthodes magiques.

Depuis PHP 5.3, il est une nouvelle Méthode Magique appelé __invoke. Le __invoke méthode est appelée lorsqu'un script tente d'appeler un objet comme une fonction.

Maintenant que j'ai fait pour cette méthode, les gens l'assimilent à la méthode Java .run() - voir L'Interface Runnable.

Avoir pensé à long et dur sur ce que je ne peux pas penser à une raison pourquoi vous appelez $obj(); par opposition à $obj->function();

Même si vous étiez une itération sur un tableau d'objets, vous le savez, le principal nom de la fonction que vous souhaitez exécuter.

Est donc le __invoke méthode magique un autre exemple de "juste parce que vous pouvez, ne signifie pas que vous devez" raccourci en PHP, ou il y a des cas où ce serait effectivement la bonne chose à faire?

source d'informationauteur Phil Carter