Funcția call_user_func_array
Funcția call_user_func_array permite apelarea unui callback, transmitând parametrii sub formă de array. Primul parametru este numele funcției sau metodei, iar al doilea - array-ul de argumente.
Sintaxă
call_user_func_array(callable $callback, array $args);
Exemplu
Apelarea unei funcții simple cu transmiterea parametrilor prin array:
<?php
function sum($a, $b) {
return $a + $b;
}
$res = call_user_func_array('sum', [2, 3]);
echo $res;
?>
Rezultatul executării codului:
5
Exemplu
Apelarea unei metode de clasă cu transmiterea parametrilor:
<?php
class Calculator {
public function multiply($a, $b) {
return $a * $b;
}
}
$calc = new Calculator();
$res = call_user_func_array([$calc, 'multiply'], [4, 5]);
echo $res;
?>
Rezultatul executării codului:
20
Exemplu
Utilizarea cu o funcție anonimă:
<?php
$func = function($a, $b, $c) {
return $a + $b + $c;
};
$res = call_user_func_array($func, [1, 2, 3]);
echo $res;
?>
Rezultatul executării codului:
6
Vezi și
-
funcția
call_user_func,
care apelează o funcție callback cu argumente individuale -
funcția
function_exists,
care verifică existența unei funcții