2012-05-18 277 views
1

假设我有一个叫做addUp的函数,它可以接受任意数量的小数参数并返回它们全部相加的结果。将可选数量的参数传递给另一个函数

如果我有以下功能:

function myTest(){ 
    $args = func_get_args(); 
    return addUp($args); 
} 

如果我把myTest(1,2,3)这显然是行不通的,因为我只有通过一个参数addUp,这是一个数组。

有没有办法将传入myTest的所有参数传递给addUp函数(不需要编辑addUp函数)?

回答

2

你可以使用call_user_func_array

它要求从一个阵列所得出的(这是你从func_get_args()得到什么)的参数的函数。

-1

您可以传入一个数组,然后遍历它。

$args = array(1, 2, 3, 4); 

function myTest($arr){ 
    $r = 0; 
    foreach($arr as $value){ 
     $r += intval($value); 
    } 

    return $r; 
} 

echo myTest($args); 
相关问题