Подтвердить что ты не робот

PHP: объединить 2 многомерных массива

Мне нужно объединить 2 многомерных массива вместе, чтобы создать новый массив.
2 массива создаются из $_POST и $_FILES, и мне нужно, чтобы они были связаны друг с другом.

Массив # 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_merge, она стирает мой новый массив в каждом цикле.

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

Как это исправить?

4b9b3361

Ответ 1

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

[] добавит его в массив вместо перезаписывания.

Ответ 3

Использование только циклов и записей массива:

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