func_get_arg(), func_get_args() 和 func_num_args() 的用法

func_get_arg(), func_get_args()func_num_args() 这三个函数呢,都是以 func_ 打头的,顾名思义,是跟 PHP 的函数有关的,我们在定义一些不定个数参数的函数的时候,用处特别大,需要注意的是:这三个函数只能用在函数内部;否则会报错。

<br />
$number = func_num_args(); //返回INT<br />
//返回函数调用时,给出参数的数量;<br />
<br />
$para = func_get_arg(n);<br />
//可以返回第N位参数的值<br />
<br />
$arr = func_get_args();<br />
//这个是用来返回参数的数组<br />

找了一个PHP手册上的例子,非常清晰:

<br />
function foo(){<br />
    $numargs = func_num_args();<br />
    echo "参数个数:$numargs<br />\n";<br />
    if ($numargs >= 2) {<br />
        echo "第二个参数是:" . func_get_arg(1) . "<br />\n";<br />
    }<br />
    $arg_list = func_get_args();<br />
    for ($i = 0; $i < $numargs; $i++) {
        echo "参数 $i 是:" . $arg_list[$i] . "<br />\n";<br />
    }<br />
}</p>
<p>foo(1, 2, 3);<br />

输出:

<br />
参数个数:3<br />
第二个参数是:2<br />
参数 0 是:1<br />
参数 1 是:2<br />
参数 2 是:3<br />

热门文章