PHP Manual
This manual is provided as a courtesy. It is not an official source. Please check php.net for updated information.
(PHP 3 >= 3.0.3, PHP 4, PHP 5)
Call a user defined function given by the function parameter. Take the following:
<?phpfunction barber($type) { echo "You wanted a $type haircut, no problem";}call_user_func('barber', "mushroom");call_user_func('barber', "shave");?>
Object methods may also be invoked statically using this function by passing array($objectname, $methodname) to the function parameter.
<?phpclass myclass { function say_hello() { echo "Hello!\n"; }}$classname = "myclass";call_user_func(array($classname, 'say_hello'));?>
Note: Note that the parameters for call_user_func() are not passed by reference. <?phpfunction increment(&$var){ $var++;}$a = 0;call_user_func('increment', $a);echo $a; // 0call_user_func_array('increment', array(&$a)); // You can use this insteadecho $a; // 1?>
Note: Note that the parameters for call_user_func() are not passed by reference.
<?phpfunction increment(&$var){ $var++;}$a = 0;call_user_func('increment', $a);echo $a; // 0call_user_func_array('increment', array(&$a)); // You can use this insteadecho $a; // 1?>
See also: is_callable(), call_user_func_array(), and information about the callback type.