ReflectionFunction::invokeArgs
(PHP 5 >= 5.1.2, PHP 7, PHP 8)
ReflectionFunction::invokeArgs — Invoca argumentos de função
Descrição
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
- ReflectionFunction::invoke() - Invoca função
- ReflectionFunctionAbstract::getNumberOfParameters() - Obtém o número de parâmetros
- __invoke()
- call_user_func_array() - Chama uma função de retorno com um array de parâmetros