PHP函数结构问题

时间:2010-02-23 10:58:00

标签: php

我有一个功能

 function me($a, $b, $c, $d) {
 }

我希望通过array_push在数组中添加所有这些是否有变量使我能够一步完成。

我想通过($a,$b,$c,$d)

foreach上回复所有这些

我不知道我会假设()中的任何变量都等于$anything

 function me($a,$b,$c,$d){
   foreach ($anything as $key => $value){
     echo $value; // i want return $a,$b,$c,$d values
   }
 }

任何人都明白我的意思吗?我希望foreach这个功能,我无法解释,因为我不明白

function(void){
  foreach(void) { }
}

我希望foreach中的所有变量()OK函数**(void)** {

4 个答案:

答案 0 :(得分:4)

我猜你在谈论可变数量的论点。下面的示例来自php site并使用func_num_args来获取实际的参数数量,func_get_args返回一个包含实际参数的数组:

function me()
{
   $numargs = func_num_args();
   echo "Number of arguments: $numargs<br />\n";
   if ($numargs >= 2) {
       echo "Second argument is: " . func_get_arg(1) . "<br />\n";
   }
   $arg_list = func_get_args();
   for ($i = 0; $i < $numargs; $i++) {
       echo "Argument $i is: " . $arg_list[$i] . "<br />\n";
   }
}

me (1, 2, 3);

答案 1 :(得分:3)

您可以尝试func_get_args()。调用它会给你一个包含所有参数值的数组(数字索引)。

但我真的不明白你在问什么。

答案 2 :(得分:1)

func_get_args()返回传递给函数的所有参数。

答案 3 :(得分:0)

您可以像Jasonbar所说的那样使用func_get_args()

function a() {
    foreach (func_get_args() as $param) {
        echo $param;
    }
}

a(1,2,3,4); // prints 1234
a(1,2,3,4,5,6,7); // prints 1234567