Que son los resource pools en VMWare, cuando usarlos y como.
2 de noviembre de 2016Proceso de actualización de mySQL 5.5 a 5.6
10 de noviembre de 2016En PHP, al igual que en muchos otros lenguajes de programación, es posible asignar una función a una variable y llamar a ésta desde cualquier punto de nuestra aplicación, igualmente podemos realizarlo a través de código procedimental asi como mediante POO.
Lo interesante de ésta funcionalidad radica en que podemos procesar valores o matrices de valores a través de métodos y que devuelvan valores distintos a los originales tras procesarlos. Para ello nada mejor que unos ejemplos.
EJEMPLO 1. Llamada a función callback
function hola(){
echo "Hola, mundo!";
}
$nombre_funcion = "hola"
call_user_func($nombre_funcion);
EJEMPLO 2. Pasar valores a función callback
function imprimir_argumentos($arg1, $arg2){
echo "Argumento1 = $argumento1, Argumento2 = $argumento2";
}
call_user_func("imprimir_argumentos","Tomates", "Peras");
EJEMPLO 3. Pasar valores de un array
function imprimir_argumentos($arg1, $arg2){
echo "El primer argumento es $arg1, el segundo es $arg2";
}
$argumentos = array("Tomates","Peras");
call_user_func_array("imprimir_argumentos", $argumentos);
EJEMPLO 4. Mediante POO
class miclase {
static function hola(){
echo "Hola mundo!";
}
}
- Podemos realizar la llamada callback de 3 formas:
// Array (clase, metodo)
call_user_func(array("miclase", 'hola'));
// Clase estática
call_user_func("miclase::hola");
// o bien instanciando un objeto y pasándolo como un array
$mi_objeto = new miclase();
call_user_func(array($mi_objeto,"hola"));
Mas información: http://www.php.net/manual/es/language.types.callable.php