php - 使用(未知)可变数量的参数调用函数?

标签 php function variadic

我需要向函数发送参数

array_intersect_key()

但有时我需要发送 2 个数组,有时 - 3 个或更多:

array_intersect_key($arr_1, $arr_2);
OR
array_intersect_key($arr_1, $arr_2, $arr_3, $arr_4);

最佳答案

假设你想像这样创建你自己的函数,关键是使用func_get_args():

function mumble(){
    $args = func_get_args();
    foreach ($args as $arg){
        ... whatever
    }
}

如果你只是想用多个参数调用它,要么“直接做”,要么使用call_user_func_array():

$args = array();
... append args to $args
call_user_func_array('array_intersect_key', $args);

关于php - 使用(未知)可变数量的参数调用函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10128477/

相关文章:

php - 使用 CSS 和 file_get_contents 时根本不回显文本

php - GeoIP 和 IP 到 PHP 中的国家/地区

haskell - 将函数应用于任意长的参数列表

c - 基于格式字符串的智能可变参数扩展

php - 选择查询相似排名

php - 错误 appcfg.py :2488 An unexpected error occurred. 正在中止

javascript - fn.call 后如何获取原始上下文?

c++ - 将数组传递给函数然后更改值?

javascript - 循环使用 p5 绘制函数的动画

c - 如何制作可变参数宏(可变数量的参数)