ReflectionFunction::invokeArgs

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

ReflectionFunction::invokeArgsInvoca argumentos de função

Descrição

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

Invoca a função e passa seus argumentos como array.

Parâmetros

args

Os argumentos passados para a função como um array, bem como call_user_func_array() funciona.

Valor Retornado

Retorna o resultado da função invocada

Registro de Alterações

Versão Descrição
8.0.0 As chaves args agora serão interpretadas como nomes de parâmetros, em vez de serem ignoradas silenciosamente.

Exemplos

Example #1 Exemplo de 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'));
?>

O exemplo acima produzirá:

Dr. Phil

Example #2 ReflectionFunction::invokeArgs() com exemplo de referências

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

Note:

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