PHP.nl

func_get_arg

func_get_arg

Return an item from the argument list

mixed **func_get_arg** int $position

Gets the specified argument from a user-defined function's argument list.

This function may be used in conjunction with and to allow user-defined functions to accept variable-length argument lists. func_get_args``func_num_args

positionThe argument offset. Function arguments are counted starting from zero.

Returns the specified argument, or false on error.

Generates a warning if called from outside of a user-defined function, or if is greater than the number of arguments actually passed. position

Voorbeeld: example

<?php
function foo()
{
     $numargs = func_num_args();
     echo "Number of arguments: $numargs\n";
     if ($numargs >= 2) {
         echo "Second argument is: " . func_get_arg(1) . "\n";
     }
}

foo(1, 2, 3);
?>
Number of arguments: 3
Second argument is: 2

Voorbeeld: example of byref and byval arguments

<?php
function byVal($arg) {
    echo 'As passed     : ', var_export(func_get_arg(0)), PHP_EOL;
    $arg = 'baz';
    echo 'After change  : ', var_export(func_get_arg(0)), PHP_EOL;
}

function byRef(&$arg) {
    echo 'As passed     : ', var_export(func_get_arg(0)), PHP_EOL;
    $arg = 'baz';
    echo 'After change  : ', var_export(func_get_arg(0)), PHP_EOL;
}

$arg = 'bar';
byVal($arg);
byRef($arg);
?>
As passed     : 'bar'
After change  : 'baz'
As passed     : 'bar'
After change  : 'baz'

Opmerking: > This function returns a copy of the passed arguments only, and does not account for default (non-passed) arguments.

... syntaxfunc_get_args``func_num_args