Cómo llamar al método de una clase con una variable en PHP

Llevo un tiempo currando con Symfony y, hasta ahora, no me habí­a encontrado nunca con el problema de llamar a una clase a través de una variable. El problema me surgió ayer al querer refactorizar unas funciones y tener que llamar a una clase determinada, que tení­a guardada en una variable.

Después de tirarme un buen rato buscando algíºn tipo de sintaxis que funcionara para hacer algo como $clase::metodo(), fui a donde debí­a haber ido desde el principio, a la web de PHP, donde me enteré que hasta la próxima versión 5.3.0 no será posible llamar a los métodos de esa forma. Una posible solución que encontré, por si alguien lo necesita alguna vez (yo mismo, por ejemplo :D), es utilizar la función call_user_func de la siguiente forma:

call_user_func(array($clase,'metodo'), $parametros);

Leave a Reply

Your email address will not be published. Required fields are marked *