Функция call_user_func_array
Функция call_user_func_array
позволяет вызвать коллбэк, передавая параметры в виде массива. Первым параметром передается имя функции или метода, а вторым - массив аргументов.
Синтаксис
call_user_func_array(callable $callback, array $args);
Пример
Вызов простой функции с передачей параметров через массив:
<?php
function sum($a, $b) {
return $a + $b;
}
$res = call_user_func_array('sum', [2, 3]);
echo $res;
?>
Результат выполнения кода:
5
Пример
Вызов метода класса с передачей параметров:
<?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;
?>
Результат выполнения кода:
20
Пример
Использование с анонимной функцией:
<?php
$func = function($a, $b, $c) {
return $a + $b + $c;
};
$res = call_user_func_array($func, [1, 2, 3]);
echo $res;
?>
Результат выполнения кода:
6
Смотрите также
-
функцию
call_user_func
,
которая вызывает callback-функцию с отдельными аргументами -
функцию
function_exists
,
которая проверяет существование функции