PhpRiot
News Archive
PhpRiot Newsletter
Your Email Address:

More information

Jose da Silva's Blog: Revisiting PHP 5.3 __invoke magic method

Note: This article was originally published at PHPDeveloper on 6 November 2010.
PHPDeveloper

In a new post to his blog Jose da Silva briefly looks at a feature that was introduced in the PHP 5.3.x series of the language - the __invoke magic method.

PHP version 5.3 introduced a new magic method designed __invoke, this method is called when a script tries to call an object as a function. [...] As php cannot accommodate pseudo-first-class functions, the __invoke method can be used to suppress this language limitation. On other hand you can use this for simpler things as pass a function around.

He includes a simple code example that shows a basic class being called via a variable name - $c('ford') - and the result of its __invoke method being called. He notes that the method, in his opinion, could make for less clean code.