// mergeAllArrays采用开放数量的数组并将它们合并为一个大数组。
function mergeAllArrays() {
$numargs = func_num_args();
$arg_list = func_get_args();
$a = array();
for ($i = 0; $i < $numargs; $i++) {
array_merge($a, $arg_list[$i]);
}
print_r($a);
mergeAllArrays($array1,$array2,$array3)
空出来...当然单个数组是分别定义的简单非关联数组(例如$array1 = array("item1","item2",etc)
)
有人可以帮忙吗?
答案 0 :(得分:0)
你可以直接使用array_merge
或者如果您只想使用您的方法,请用
function mergeAllArrays() {
$numargs = func_num_args();
$arg_list = func_get_args();
$a = array();
for ($i = 0; $i < $numargs; $i++) {
$a = array_merge($a, $arg_list[$i]);
}
var_dump($a);
}
mergeAllArrays($array1,$array2,$array3);
在你的代码中,一个结束括号丢失,合并数据存储变量丢失,我添加了
答案 1 :(得分:-1)
您必须将新值分配给$ a:
// mergeAllArrays takes an open number of arrays and merges them into one large array.
function mergeAllArrays() {
$numargs = func_num_args();
$arg_list = func_get_args();
$a = array();
for ($i = 0; $i < $numargs; $i++) {
$a = array_merge($a, $arg_list[$i]);
}
print_r($a);
}
mergeAllArrays($array1,$array2,$array3);
但是我想知道你是否真的需要这个,因为你的函数与php native function array_merge(它也可以接受多个数组)相同。