Cómo pasar un número determinado de variables a una función en PHP

Hoy vamos a ver cómo pasar un número determinado de variables a una función en PHP, para hacer esto, usaremos la función call_user_func_array, la cual nos ayudará a llamar a una función pasando-le un determinado número de variables.

Puede que sea una situación extraña, pero por tal situación, siempre es complicado encontrar una solución, así que aquí os la pongo:

Aquí lo que hacemos es pasarle a la función test, las variables que tenemos dentro del array $params, de esta forma podremos pasar a la función las variables que nos hagan falta, sin tener que declararlas todas en la declaración de la función.ç

Esto lo que acabará mostrando será lo siguiente:

Le hemos pasado un total de: 3 variables a la función.
Que son las siguientes:
array(3) { [0]=> int(23) [1]=> string(11) "hello world" [2]=> string(29) "la página de oyagum.com mola" }

Con veis es bastante fácil pasarle las variables que necesitemos a la función.

En el caso de que en vez de tenerlo así, lo tenéis con clases, como por ejemplo $foo->bar no hay problema es tan simple como hacer lo siguiente:

Simplemente a la función call_user_func_array le pasamos como primera variable un array.

Y en el primer valor del array, tendremos la variable de la clase que queremos utilizar, en este caso $foo.

Como segundo valor le vamos a pasar un string, el cual será el nombre del método que queremos ejecutar, el cual en este caso es «bar».

Y entonces esto lo que hace es llamar a $foo->bar() pasando las 3 variables que ya hemos visto antes, tan sencillo como eso.

Espero que os haya servido lo explicado.

Y recordad! No olvidéis comentar! En vuestro código y en el Blog!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*
*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.