ReflectionFunction::invokeArgs

(PHP 5 >= 5.1.2, PHP 7, PHP 8)

ReflectionFunction::invokeArgsВызов функции с передачей аргументов

Описание

publicReflectionFunction::invokeArgs(array$args): mixed

Вызывает функцию и передаёт ей аргументы в виде массива.

Список параметров

args

Передаваемые функции аргументы в виде массива. Поведение функции аналогично call_user_func_array().

Возвращаемые значения

Возвращает результат выполнения вызванной функции.

Список изменений

ВерсияОписание
8.0.0 Ключи args теперь интерпретируются как имена параметров, а не игнорируются.

Примеры

Пример #1 Пример использования ReflectionFunction::invokeArgs()

<?php
function title($title, $name)
{
return
sprintf("%s. %s\r\n", $title, $name);
}

$function = new ReflectionFunction('title');

echo
$function->invokeArgs(array('Dr', 'Phil'));
?>

Результат выполнения приведённого примера:

Dr. Phil

Пример #2 Пример использования ReflectionFunction::invokeArgs() со ссылками на аргументы

<?php
function get_false_conditions(array $conditions, array &$false_conditions)
{
foreach (
$conditions as $condition) {
if (!
$condition) {
$false_conditions[] = $condition;
}
}
}

$function_ref = new ReflectionFunction('get_false_conditions');

$conditions = array(true, false, -1, 0, 1);
$false_conditions = array();

$function_ref->invokeArgs(array($conditions, &$false_conditions));

var_dump($false_conditions);
?>

Результат выполнения приведённого примера:

array(2) { [0]=> bool(false) [1]=> int(0) }

Примечания

Замечание:

Аргументы в списке, который передают в метод, должны быть ссылками, если у функции есть параметры, которые принимают аргументы по ссыкле.

Смотрите также

To Top