Слияние индексных массивов
Часть раздела Логика и управление потоком путешествия по PHP на Coddy — урок 14 из 68.
Когда вам нужно объединить несколько индексированных массивов в один большой массив, функция PHP array_merge() предоставляет идеальное решение. Эта функция принимает два или более массивов в качестве аргументов и создает новый массив, содержащий все элементы из входных массивов.
Вот основной синтаксис:
<?php
$firstList = ["Alice", "Bob"];
$secondList = ["Charlie", "Diana"];
$combined = array_merge($firstList, $secondList);
print_r($combined); // Вывод: Array ( [0] => Alice [1] => Bob [2] => Charlie [3] => Diana )
?>Обратите внимание, как array_merge() создает совершенно новый массив вместо того, чтобы изменять исходные массивы. Элементы из первого массива идут первыми, за ними следуют элементы из второго массива и так далее. Новый массив автоматически переиндексируется, начиная с 0.
Вы можете объединить более двух массивов одновременно:
<?php
$morning = ["John", "Sarah"];
$afternoon = ["Mike", "Lisa"];
$evening = ["Tom"];
$allGuests = array_merge($morning, $afternoon, $evening);
print_r($allGuests); // Вывод: Array ( [0] => John [1] => Sarah [2] => Mike [3] => Lisa [4] => Tom )
?>Эта функция особенно полезна, когда вы собираете данные из разных источников и вам нужно объединить их в один список, например, при слиянии списков гостей с разных мероприятий или объединении каталогов товаров из нескольких категорий.
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Задание
ЛегкоВы получите три входных значения: два массива в формате JSON и третий массив также в формате JSON. Прочитайте все три входных значения, преобразуйте каждую строку JSON в массив, используйте array_merge() для объединения всех трех массивов в один и выведите объединенный массив с помощью print_r().
Формат входных данных: Три строки — каждая строка содержит массив JSON (например: ["apple","banana"])
Ожидаемый результат: Объединенный массив, содержащий все элементы из трех массивов по порядку, отображаемый с помощью print_r()
Шпаргалка
Используйте array_merge(), чтобы объединить несколько индексированных массивов в один большой массив:
<?php
$firstList = ["Alice", "Bob"];
$secondList = ["Charlie", "Diana"];
$combined = array_merge($firstList, $secondList);
print_r($combined); // Выводит: Array ( [0] => Alice [1] => Bob [2] => Charlie [3] => Diana )
?>array_merge() создает новый массив, не изменяя исходные массивы. Элементы объединяются по порядку и автоматически переиндексируются, начиная с 0.
Вы можете объединять более двух массивов одновременно:
<?php
$morning = ["John", "Sarah"];
$afternoon = ["Mike", "Lisa"];
$evening = ["Tom"];
$allGuests = array_merge($morning, $afternoon, $evening);
print_r($allGuests); // Выводит: Array ( [0] => John [1] => Sarah [2] => Mike [3] => Lisa [4] => Tom )
?>Попробуйте сами
<?php
// Чтение трех входных данных JSON
$input1 = trim(fgets(STDIN));
$input2 = trim(fgets(STDIN));
$input3 = trim(fgets(STDIN));
// Преобразование строк JSON в массивы
$array1 = (array)json_decode($input1, true);
$array2 = (array)json_decode($input2, true);
$array3 = (array)json_decode($input3, true);
// TODO: Напишите ниже свой код для объединения массивов и вывода результата
?>В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Логика и управление потоком
1Продвинутые функции
Анонимные функцииЗамыкания и 'use'Стрелочные функцииCallback-функцииИспользование 'call_user_func'Функции переменныхПередача по ссылкеРекурсивные функцииИтоги: ассорти из функций4Многомерные массивы
Создание 2D-массиваДоступ к элементам 2D-массиваИзменение элементов 2D-массиваИтерация с вложенными цикламиДвумерные ассоциативные массивыИтоги: Упражнение «Простая сетка»2Продвинутая работа с массивами
Добавление с помощью 'array_push'Удаление с помощью 'array_pop'Добавление с помощью 'array_unshift'Удаление с помощью 'array_shift'Слияние индексных массивовСлияние ассоциативных массивовИзвлечение с помощью 'array_slice'Поиск значений с 'in_array'Поиск ключей с 'array_search'Итоги: Упражнение «Плейлист»3Сортировка массивов
Сортировка индексных массивов по возрастаниюСортировка индексных массивов по убываниюСортировка ассоциативных массивов по значениюСортировка ассоциативных массивов по ключуСортировка в естественном порядкеПользовательская сортировка с помощью 'usort'Итоги: Сортировка таблицы лидеров