Function handling Functions
call_user_func
Function handling Functions
PHP Manual

# call_user_func_array

(PHP 4 >= 4.0.4, PHP 5)

call_user_func_array — Call a user function given with an array of parameters

### Description

mixed call_user_func_array ( callback `$function` , array `$param_arr` )

Call a user defined `function` with the parameters in `param_arr` .

### Parameters

`function`

  The function to be called.

`param_arr`

  The parameters to be passed to the function, as an indexed array.

### Return Values

Returns the function result, or `FALSE` on error.

### Examples

Example#1 call_user_func_array() example

`<?php
function debug($var, $val)
{
echo "***DEBUGGING\nVARIABLE: $var\nVALUE:";
if (is_array($val) || is_object($val) || is_resource($val)) {
print_r($val);
} else {
echo "\n$val\n";
}
echo "***\n";
}
$c = mysql_connect();
$host = $_SERVER["SERVER_NAME"];
call_user_func_array('debug', array("host", $host));
call_user_func_array('debug', array("c", $c));
call_user_func_array('debug', array("_POST", $_POST));
?>`

Example#2 call_user_func_array() using namespace name

`<?php
namespace Foobar;
class Foo {
static public function test($name) {
print "Hello {$name}!\n";
}
}
// As of PHP 5.3.0
call_user_func_array(__NAMESPACE__ .'::Foo::test', array('Hannes'));
// Hello Hannes!
// As of PHP 5.3.0
call_user_func_array(array(__NAMESPACE__ .'::Foo', 'test'), array('Philip'));
// Hello Philip!
?>`

### Notes

> Note: Referenced variables in `param_arr` are passed to the function by a reference, others are passed by a value. In other words, it does not depend on the function signature whether the parameter is passed by a value or by a reference.

### See Also

- call_user_func()
- information about the callback type

Function handling Functions
call_user_func
Function handling Functions
PHP Manual