Добавить ассоциативные массивы в PHP в ассоциативный массив, используя тот же ключ - PullRequest
0 голосов
/ 19 апреля 2020

Я выпустил с переопределением массива ассо c в php, добавив под тем же ключом второй ассоциативный массив с другим ключом.

моя функция:

$this->data[$period]= [$i=> ['key'=>$value, 'key1'=>$value1]];

точка принимает fx 1,2, а $ i принимает fx 3,4,5.

Дело в том, что я хочу добавить к ключу $ period несколько таблиц с другим ключом $ i, но он переопределяет весь массив. Например, если мы возьмем это значение $ period = 1, а $ i = 3 и 4:

$data[1] = [3=> ['key'=>key, 'key1'=>key1 ]];
$data[1] = [4=> ['key'=>keyX, 'key1'=>key1X ]];

, если в таблице var_dump показано, что только таблица данных содержит

$data[1] = [4=> ['key'=>keyX, 'key1'=>key1X ]] 

и таблицу с ключом $ i = = 3 удаляется.

как правильно его добавить, чтобы эти две таблицы были под $ period 1?

Я знаю, что могу добавить дополнительный массив asso c до этого два, но, может быть, это более уместно?

Спасибо!

1 Ответ

0 голосов
/ 19 апреля 2020

Вы не можете иметь элементы в массиве с одним и тем же ключом, поэтому вам нужно сделать $data[$period] сам массив и добавить в него sh таблиц:

$data[1][] = [3=> ['key'=>'key', 'key1'=>'key1' ]];
$data[1][] = [4=> ['key'=>'keyX', 'key1'=>'key1X' ]];
print_r($data[1]);

Вывод:

Array
(
    [0] => Array
        (
            [3] => Array
                (
                    [key] => key
                    [key1] => key1
                )
        )
    [1] => Array
        (
            [4] => Array
                (
                    [key] => keyX
                    [key1] => key1X
                )
        )
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...