sweli 发表于 2017-12-30 23:35:47

请写一个php函数,可以接受任意数量的参数

  请写一个php函数,可以接受任意数量的参数
  这是一道面试题。怎么写这个函数呢?
  function fun(......)
  {
  }
  -----------------------------------------解决方案------------------------------
  //PHP code
  show_params(1, 2, 'apple', 3.14);
  function show_params () {
  //获取传递参数的个数
  $count = func_num_args();
  //遍历参数并逐一输出
  for ($i = 0; $i < $count; $i++) {
  //获取参数
  $param = func_get_arg($i);
  echo $param . PHP_EOL;
  }
  }
  -----------------------------------------解决方案------------------------------
  //PHP code
  function func()
  {
  var_dump(func_get_args());
  }
  ————————————————分割线————————————————————————
  实例如下:
  

function foo(){  

  
//函数func_get_args():返回的是包含当前函数的所有参数的一个数组;
  

  
$args = func_get_args();
  

  
foreach($args as $k => $v){
  

  
echo 'arg'.($k+1)." : $v".'<br/>';
  

  
}
  

  
}
  

  
//没有参数,什么都不输出
  

  
echo foo();
  

  
//输入 hello world
  

  
echo foo('hello ', 'world');
  

  

  

  
输出
  

  
arg1 : hello
  

  
arg2 : world
  

  

  

  
//输入 hello world again
  

  
echo foo('hello ', 'world', 'again');
  

  

  

  
输出
  

  
arg1 : hello
  

  
arg2 : world
  

  
arg3 : again
  

  

  扩展
  func_num_args():返回当前函数参数的个数
  func_get_arg():返回当前函数指定参数的值
页: [1]
查看完整版本: 请写一个php函数,可以接受任意数量的参数