Итак, я нашел ответ, который должен работать, но он тоже не появляется ...
Уже принят ответ с той же проблемой.
У меня есть следующий массив под названием $banners
:
[
0 => [
"bannerCustomTemplate" => 0,
"bannerId" => 1,
"bannerType" => 1,
"bannerTitle" => "Merry",
"bannerStrapline" => "Christmas",
"bannerPeriod" => "2018-12-01 to 2018-12-10",
"bannerText" => "Christmas opening hours"
],
1 => [
"bannerCustomTemplate" => 0,
"bannerId" => 7,
"bannerType" => 2,
"bannerTitle" => "Easter",
"bannerStrapline" => "Test",
"bannerPeriod" => "2018-12-04 to 2018-12-12",
"bannerText" => "dsadasdaas"
]
]
Ответы, которые я прочитал, предлагают $all_banners = call_user_func_array('array_merge', $banners);
.
Однако это дает мне:
[
"bannerCustomTemplate" => 0,
"bannerId" => 7,
"bannerType" => 2,
"bannerTitle" => "Easter",
"bannerStrapline" => "Test",
"bannerPeriod" => "2018-12-04 to 2018-12-12",
"bannerText" => "dsadasdaas"
]
Похоже, это просто замена, а не слияние.У кого-нибудь есть идеи?
Редактировать
Просто прочитайте следующий комментарий
Небольшая заметка здесь.Обновленный вариант с распакованным массивом не работает со строковыми ключами.Но первый работает отлично.Просто имейте это в виду.- Alliswell
Итак, я обновил свой код с помощью других решений с такими же результатами.
Редактировать 2
Ну, объединение объединение не заменяет.Так что я ожидаю:
[
"bannerCustomTemplate" => [ 0, 0 ],
"bannerId" => [ 1, 7 ],
"bannerType" => [ 1, 2 ],
"bannerTitle" => [ "Merry", "Easter" ]
"bannerStrapline" => [ "Christmas", "Test" ]
"bannerPeriod" => [ "2018-12-01 to 2018-12-10", "2018-12-04 to 2018-12-12" ]
"bannerText" => ["Christmas opening hours", "dsadasdaas" ]
]