Jesus · Bible · HTML · CSS · JS · PHP · SVG · Applications

call_user_func

Description

The call_user_func of Function Handling for PHP call the callback given by the first parameter.

Syntax

 call_user_func(callable $callback, mixed ...$args): mixed

Parameters

callback

The callable to be called.

args

Zero or more parameters to be passed to the callback.

Note: Note that the parameters for call_user_func() are not passed by reference.

Return

Returns the return value of the callback.

Examples

1 · callback

<?

function myfunction()
{
    return __FUNCTION__ . " Hello World!";
}

$callback = "myfunction";

$return = call_user_func($callback);

echo $return;

?>
myfunction Hello World!

2 · args

<?

function myfunction($myparameter1, $myparameter2)
{
    return __FUNCTION__ . " $myparameter1 $myparameter2";
}

$callback = "myfunction";
$arg1 = "Hello";
$arg2 = "World!";

$return = call_user_func($callback, $arg1, $arg2);

echo $return;

?>
myfunction Hello World!

3 · closure

<?

$myfunction = function($myparameter1, $myparameter2)
{
    return __FUNCTION__ . " $myparameter1 $myparameter2";
};

$callback = $myfunction;
$arg1 = "Hello";
$arg2 = "World!";

$return = call_user_func($callback, $arg1, $arg2);

echo $return;

?>
{closure} Hello World!

4 · class

<?

class myclass
{
    static function myfunction($myparameter1, $myparameter2)
    {
        return __METHOD__ . " $myparameter1 $myparameter2";
    }
}

$callback = "myclass::myfunction";
$arg1 = "Hello";
$arg2 = "World!";

$return = call_user_func($callback, $arg1, $arg2);

echo $return;

?>
myclass::myfunction Hello World!

5 · class

<?

class myclass
{
    static function myfunction($myparameter1, $myparameter2)
    {
        return __METHOD__ . " $myparameter1 $myparameter2";
    }
}

$callback = array("myclass", "myfunction");
$arg1 = "Hello";
$arg2 = "World!";

$return = call_user_func($callback, $arg1, $arg2);

echo $return;

?>
myclass::myfunction Hello World!

6 · class

<?

class myclass
{
    static function myfunction($myparameter1, $myparameter2)
    {
        return __METHOD__ . " $myparameter1 $myparameter2";
    }
}

$callback = array(new myclass(), "myfunction");
$arg1 = "Hello";
$arg2 = "World!";

$return = call_user_func($callback, $arg1, $arg2);

echo $return;

?>
myclass::myfunction Hello World!

7 · namespace

<?

namespace mynamespace;

class myclass
{
    static function myfunction($myparameter1, $myparameter2)
    {
        return __NAMESPACE__ . " $myparameter1 $myparameter2";
    }
}

$callback = __NAMESPACE__ . "\myclass::myfunction";
$arg1 = "Hello";
$arg2 = "World!";

$return = call_user_func($callback, $arg1, $arg2);

echo $return;

?>
mynamespace Hello World!

8 · namespace

<?

namespace mynamespace;

class myclass
{
    static function myfunction($myparameter1, $myparameter2)
    {
        return __NAMESPACE__ . " $myparameter1 $myparameter2";
    }
}

$callback = array(__NAMESPACE__ . "\myclass", "myfunction");
$arg1 = "Hello";
$arg2 = "World!";

$return = call_user_func($callback, $arg1, $arg2);

echo $return;

?>
mynamespace Hello World!
HomeMenu