Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:合并2个多维数组_Php_Multidimensional Array - Fatal编程技术网

PHP:合并2个多维数组

PHP:合并2个多维数组,php,multidimensional-array,Php,Multidimensional Array,我需要合并两个多维数组以创建一个新数组。 这两个数组是从$\u POST和$\u文件创建的,我需要它们相互关联 数组1 Array ( [0] => Array ( [0] => 123 [1] => "Title #1" [2] => "Name #1" ) [1] => Array ( [0] =&

我需要合并两个多维数组以创建一个新数组。 这两个数组是从$\u POST和$\u文件创建的,我需要它们相互关联

数组1

Array 
(
    [0] => Array
        (
            [0] => 123  
            [1] => "Title #1"
            [2] => "Name #1"
        )
    [1] => Array
        (
            [0] => 124  
            [1] => "Title #2"
            [2] => "Name #2"
        )
)
阵列2

Array
(
    [name] => Array
        (
            [0] => Image001.jpg
            [1] => Image002.jpg
        )
)
新阵列

Array
(
    [0] => Array
        (
            [0] => 123  
            [1] => "Title #1"
            [2] => "Name #1"
            [3] => "Image001.jpg"
        )
    [1] => Array
        (
            [0] => 124  
            [1] => "Title #2"
            [2] => "Name #2"
            [3] => "Image002.jpg"
        )
)
我使用的当前代码有效,但仅适用于数组中的最后一项。 我假设通过循环array\u merge函数,每次循环都会擦除我的新数组

$i=0;
$NewArray = array();
foreach($OriginalArray as $value) {
    $NewArray = array_merge($value,array($_FILES['Upload']['name'][$i]));
    $i++;
}
我如何纠正这个问题

$i=0;
$NewArray = array();
foreach($OriginalArray as $value) {
    $NewArray[] = array_merge($value,array($_FILES['Upload']['name'][$i]));
    $i++;
}

[]将把它附加到数组中,而不是覆盖。

仅使用循环和数组表示法:

$newArray = array();
$i=0;
foreach($arary1 as $value){
  $newArray[$i] = $value;
  $newArray[$i][] = $array2["name"][$i];
  $i++;
}

使用以下任一内置阵列函数:

数组\合并\递归或数组\替换\递归


打扰一下我也有同样的问题。我想问一下,什么时候有不同长度的排列1>2。我想给出array2 ImageEmpty.jpg的值。谢谢你