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


(PHP 5 >= 5.1.0)

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

Описание

public mixed ReflectionFunction::invokeArgs ( array $args )

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

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

args

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

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

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

Примеры

Пример #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(truefalse, -101);
$false_conditions = array();

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

var_dump($false_conditions);
?>

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

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

Примечания

Замечание:

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

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