ReflectionMethod
Esta clase permite llamar a métodos de una clase de manera dinámica. Imaginemos que tenemos una clase Manager
con dos métodos:
class Manager { metodoHola() { echo 'Hola'; } metodoAdios() { echo 'Adios'; } } |
Si queremos llamar a los métodos de la clase Manager
de forma dinámica, en función de un parámetro, la clase ReflectionMethod
nos permite hacerlo:
$reflectionMethod = new \ReflectionMethod('Manager', 'metodo'.ucfirst($variable)); $reflectionMethod->invoke($manager); |
En el anterior ejemplo, si $variable = 'hola'
, al ejecutar $reflectionMethod->invoke($manager)
ejecutaríamos el método metodoHola
. Si en cambio fuese $variable = 'adios'
llamaríamos a metodoAdios
.