The example in this article describes the php variable length parameter processing function. Share it with everyone for your reference, the details are as follows:
Like C++, functions containing variable parameters can also be processed in PHP. The principle is the same, and a function is needed to specifically process the parameter list. PHP provides three related functions:
1. func_num_args() -- Returns the number of parameters passed to the function
int func_num_args ( void )
Example:
function open_database($DB, $cache_size_or_values=null, $cache_size=null) { switch (function_num_args()) { case 1: $r = select_db($DB); break; case 2: $r = select_db($DB, $cache_size_or_values); break; case 3: $r = select_db($DB, $cache_size_or_values, $cache_size); break; } return is_resource($r); }
##2. func_get_arg() -- Return the specified parameter
mixed func_get_arg (int arg_num)
<?php function some_func($a, $b) { for($i = 0; $i<func_num_args(); ++$i) { $param = func_get_arg($i); echo "the param is $param\n" } } some_func(1,3,5,7,9); ?>
3. func_get_args() -- Returns the parameter list in the form of an array
array func_get_args ( void )
<?php function some_other_func($a, $b) { $param = func_get_args(); $param = join(", ", $param); // 分解显示 echo "the arglist is: $param\n"; } some_other_func(1,3,5,7,9); ?>