php - call_user_func

Description

mixed call_user_func ( callback $function [, mixed $parameter [, mixed $...]] )
Call a user defined function given by the function parameter.

Parameters


function
The function to be called. Class methods may also be invoked statically using this function by passing array($classname, $methodname) to this parameter.
parameter
Zero or more parameters to be passed to the function.
Note: Note that the parameters for call_user_func() are not passed by reference. 
<?php 
function increment(&$var) {
$var++;
}
$a = 0;
call_user_func('increment', $a);
echo $a; // 0
call_user_func_array('increment', array(&$a)); // You can use this instead
echo $a; // 1 
?>

Return Values

Returns the function result, or FALSE on error.

Examples


Example 743. call_user_func() example
<?php
function barber($type)
{
echo
"You wanted a $type haircut, no problem";
}

call_user_func('barber', "mushroom");
call_user_func('barber', "shave");
?>

Example 744. Using a class method


<?php

class myclass {

function
say_hello()
{
echo
"Hello!\n";
}
}
$classname = "myclass";
call_user_func(array($classname, 'say_hello'));

?>

No comments:

Post a Comment