我可以合并名称保存为变量的数组吗?

时间:2013-02-04 10:02:59

标签: php arrays merge

我有一个包含数组名称的数组

$names_array[] = ('$array1', '$array2', $array3'....)

$names_array[]动态更新,因此可能包含2个或更多不同的名称。

执行脚本时,需要合并$names_array[]中列出的数组的值。

4 个答案:

答案 0 :(得分:0)

我认为在合并的情况下它不是问题

你可以合并$ result = array_merge($ array1,$ array2);

http://php.net/manual/en/function.array-merge.php

答案 1 :(得分:0)

$names_array = array ('array1', 'array2', 'array3');

$array1 = array ('a','b','c');
$array2 = array ('d','e','f');
$array3 = array ('g','h','i');

$result = array ();
foreach ($names_array as $x) {
    $result = array_merge ($result, $$x);
}

print_r ($result);

答案 2 :(得分:0)

我认为可以使用变量变量来完成。

$arraymerge = array();
foreach ($names_array as $arrayname)
    {
    $arraymerge = array_merge($arraymerge, ${$arrayname});
    }

答案 3 :(得分:0)

感谢您的帮助......我解决了这个问题:如果有人需要合并动态生成的数组,在我的情况下我有六个数组存在或不存在,所以我需要合并现有数组。我做的是:

if(!is_array($array1[$i])) $array1[$i]=array();
if(!is_array($array2[$i])) $array2[$i]=array();
if(!is_array($array3[$i])) $array3[$i]=array();
if(!is_array($array4[$i])) $array4[$i]=array();
if(!is_array($array5[$i])) $array5[$i]=array();
if(!is_array($array6[$i])) $array5[$i]=array();

$combineddata[$i]=array_merge($array1[$i], $array2[$i],$array3[$i],$array4[$i], $array5[$i], $array6[$i]);

如果'array_x [$ i]'不存在,array_merge不会破坏脚本只是合并空数组。

由于