Создайте многомерный массив с помощью циклов for - PullRequest
0 голосов
/ 05 мая 2020

Необходимо создать многомерный массив, который будет отличаться количеством подмассивов. Поэтому мне нужно использовать for-l oop, как описано ниже. Массив $ newArray_1 возвращает правильные значения.

Наблюдение:

Я подозреваю, что правильные 2 итерации в foor-l oop выполняются, но последний l oop перезаписывает результат первый l oop.

Результат от $ newArray_2:

Array
(
    [title_2] => Array
        (
            [0] => 3
            [1] => 4
        )

)

Требуемый результат от $ newArray_2:

Array
(
    [title_1] => Array
        (
            [0] => 1
            [1] => 2
        )

    [title_2] => Array
        (
            [0] => 3
            [1] => 4
        )

)

Мой код:

<?php

$titles = [
  ['title_1'],
  ['title_1'],
  ['title_2'],
  ['title_2'],
];

print_r($titles);

$values = [
  1,
  2,
  3,
  4,
];

// Create new array. <-- Works fine [start]

$newArray_1 = [
  $titles[0][0] => [
  $values[0],
  $values[1],
  ],

  $titles[2][0] => [
  $values[2],
  $values[3],
  ],
];

print_r($newArray_1); //  <-- Works fine [end]


// Do same as above new array, but with foor loop. <-- Does not work [start]

for ($i=0; $i <= 2 ; $i+=2) {

  $newArray_2 = [
    $titles[$i][0] => [
    $values[$i],
    $values[$i+1],
    ]
  ];

} // <-- Does not work [end]

print_r($newArray_2);
...