func_num_args函数和func_get_args()函数的结合取出多个数组的最大值

/**
* 从多个数组中取出最大的值
* func_num_args函数功能– 返回传递到函数的参数数目,其语法如下 : int func_num_args (void )。说明 :
* 返回传递到目前定义函数的参数数目。如果是从函数定义的外面来呼叫此函数,则func_get_arg( )将会产生
* 警告。func_num_args( )可以用来结合func_get_arg( )和func_get_args( )来允许使用者定义的函式
* 接受variable-length参数列表。其中,func_get_arg( )从参数列表返回项目,其
* 语法:int func_get_arg (int arg_num),传回定义函数的参数列表的第arg_num个参数,其参数
* 从0开始。且函数定义的外面来呼叫此函数会产生警告;并且当arg_num大于函数实际传递的参数数
* 目时亦会产生警告并返回FALSE。func_get_args()函数和func_get_arg()函数的区别在于,
* func_get_args()函数传回一数组,数组的各个元素相当于是目前使用者定义函式的参数列的数目
* @param [type] $arr [description]
* @return [type] [description]
*/

public function arr_max()
    {

    if (func_num_args() > 1) {
      $result = [];
      foreach (func_get_args() as $value) {
        array_push($result, call_user_func_array('max',[$value]));
      }
      return max($result);
      }else{
      return FALSE;
      }

    }

 

posted @ 2018-07-02 17:46  Mareker  阅读(152)  评论(0)    收藏  举报