Query: func_num_args
OS: php
Section: 3
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
FUNC_NUM_ARGS(3) 1 FUNC_NUM_ARGS(3) func_num_args - Returns the number of arguments passed to the functionSYNOPSISint func_num_args (void )DESCRIPTIONGets the number of arguments passed to the function. This function may be used in conjunction with func_get_arg(3) and func_get_args(3) to allow user-defined functions to accept variable- length argument lists.RETURN VALUESReturns the number of arguments passed into the current user-defined function.CHANGELOG+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 5.3.0 | | | | | | | This function can now be used in parameter | | | lists. | | | | | 5.3.0 | | | | | | | If this function is called from the outermost | | | scope of a file which has been included by call- | | | ing include(3) or require(3) from within a func- | | | tion in the calling file, it now generates a | | | warning and returns -1. | | | | +--------+---------------------------------------------------+ERRORS/EXCEPTIONS Generates a warning if called from outside of a user-defined function.EXAMPLESExample #1 func_num_args(3) example <?php function foo() { $numargs = func_num_args(); echo "Number of arguments: $numargs "; } foo(1, 2, 3); ?> The above example will output: Number of arguments: 3 Example #2 func_num_args(3) example before and after PHP 5.3 test.php <?php function foo() { include './fna.php'; } foo('First arg', 'Second arg'); ?> fna.php <?php $num_args = func_num_args(); var_export($num_args); ?> Output previous to PHP 5.3: 2 Output in PHP 5.3 and later will be something similar to: Warning: func_num_args(): Called from the global scope - no function context in /home/torben/Desktop/code/ml/fna.php on line 3 -1NOTESNote Because this function depends on the current scope to determine parameter details, it cannot be used as a function parameter in ver- sions prior to 5.3.0. If this value must be passed, the results should be assigned to a variable, and that variable should be passed.SEE ALSO... syntax in PHP 5.6+, func_get_arg(3), func_get_args(3), ReflectionFunctionAbstract::getNumberOfParameters. PHP Documentation Group FUNC_NUM_ARGS(3)