Llamar objetos como si fueran funciones en PHP

En PHP 5.3 existe el método __invoke que permite llamar a un objeto como si se tratara de una función, y como lo mejor para entenderlo es un ejemplo, pues aquí va:


class Hola {
    public function __invoke($quien) {
        return "Hola, $quien";
    }
}
$saluda = new Hola;
echo $saluda('amigo'); // "Hola, amigo"

Una función que desconocía y que puede ser muy útil, además de ser un 25% más rápida que hacer la llamada a un método del objeto que haga lo mismo.

Vía / Phly, boy, phly

Similar Posts

2 Comments

  1. Eso es porqué en PHP, al igual que otros muchos lenguajes dinámicos, las funciones son elementos de primer orden.

Comments are closed.