ReflectionFunction::invokeArgs

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

ReflectionFunction::invokeArgsInvokes function args

Descrição

public ReflectionFunction::invokeArgs(array $args): mixed

Invokes the function and pass its arguments as array.

Parâmetros

args

The passed arguments to the function as an array, much like call_user_func_array() works.

Valor Retornado

Returns the result of the invoked function

Registro de Alterações

Versão Descrição
8.0.0 args keys will now be interpreted as parameter names, instead of being silently ignored.

Exemplos

Exemplo #1 ReflectionFunction::invokeArgs() example

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

$function = new ReflectionFunction('title');

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

O exemplo acima produzirá:

Dr. Phil

Exemplo #2 ReflectionFunction::invokeArgs() with references example

<?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);
?>

O exemplo acima produzirá:

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

Notas

Nota:

Se a função tiver argumentos que precisam ser referências, então eles devem ser referências na lista de argumentos passada.

Veja Também