PHP函数能接受无限数量的参数吗?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (33)

在PHP中,有如下所示的函数unset()支持抛给的任意数量的参数。

我想要创建一个类似的函数,它能够接受任意数量的参数并处理它们。

知道怎么做吗?

提问于
用户回答回答于

在PHP中,使用以下函数func_get_args

<?php
function myfunc(){
    $args = func_get_args();
    foreach ($args as $arg)
      echo $arg."/n";
}

myfunc('hello', 'world', '.');
?>

另一种方法是:

<?php
function myfunc($args){
    while(list($var, $value)=each($args))
      echo $var.' '.$value."/n";
}

myfunc(array('first'=>'hello', 'second'=>'world', '.'));
?>
用户回答回答于

可以在功能范围内使用这些函数:

  • func_get_arg()
  • func_get_args()
  • func_num_args()

例子:

foreach (func_get_args() as $arg)
{
    // ...
}

for ($i = 0, $total = func_num_args(); $i < $total; $i++)
{
    $arg = func_get_arg($i);
}

扫码关注云+社区

领取腾讯云代金券