Если у меня есть массив, который выглядит примерно так:
Array ( [0] => Array ( [DATA] => Array ( VALUE1 = 1 VALUE2 = 2 ) ) [1] => Array ( [DATA] => Array ( VALUE3 = 3 VALUE4 = 4 ) ) )
И хотел бы превратить это в это:
Array ( [0] => Array ( [DATA] => Array ( VALUE1 = 1 VALUE2 = 2 VALUE3 = 3 VALUE4 = 4 ) ) )
Я в основном хочу объединить все одинаковые ключи, которые находятся на одном уровне. Какой был бы лучший путь для этого? Могут ли функции array_merge быть полезными?
Надеюсь, что это делает какой-то смысл и спасибо заранее за любую помощь, которую я могу получить.
Вы можете использовать array_merge_recursive
чтобы объединить все элементы в исходном массиве вместе. И поскольку эта функция принимает переменное количество аргументов, что делает ее громоздкой, когда это число неизвестно во время компиляции, вы можете использовать call_user_func_array
для дополнительного удобства:
$result = call_user_func_array('array_merge_recursive', $array);
Результат будет иметь «верхний уровень» вашего отложенного ввода (логический, поскольку вы объединяете несколько элементов в один), но сохранит всю оставшуюся структуру.
Смотрите в действии .