Menu
Coddy logo textTech

Добавление с помощью 'array_unshift'

Часть раздела Логика и управление потоком путешествия по PHP на Coddy. Урок 12 из 68.

В то время как array_push() добавляет элементы в конец массива, функция array_unshift() делает обратное. Она добавляет один или несколько элементов в beginning массива. Эта функция напрямую изменяет исходный массив и возвращает новую длину массива.

Вот базовый синтаксис:

<?php
$tasks = ["buy groceries", "do laundry"];
array_unshift($tasks, "urgent meeting");
print_r($tasks);  // Outputs: Array ( [0] => urgent meeting [1] => buy groceries [2] => do laundry )
?>

Обратите внимание, что новый элемент становится индексом 0, а все существующие элементы сдвигаются к более высоким индексам. Эта переиндексация выполняется автоматически: array_unshift() обновляет все числовые ключи, чтобы сохранить правильную последовательность.

Вы также можете добавить несколько элементов одновременно:

<?php
$priorities = ["medium task"];
array_unshift($priorities, "high priority", "critical task");
print_r($priorities);  // Выводит: Array ( [0] => high priority [1] => critical task [2] => medium task )
?>

Эта функция особенно полезна, когда вам нужно расставить приоритеты для items в list, например добавить urgent tasks в начало списка дел или вставить high priority items в начало очереди.

challenge icon

Задание

Легко

Вы получите два входных значения: исходный array уведомлений в формате JSON и новое срочное уведомление, которое нужно add. Прочитайте оба входных значения, преобразуйте строку JSON в array, используйте array_unshift(), чтобы add срочное уведомление в beginning array, и выведите final array с помощью print_r().

Формат ввода: Две строки — первая строка содержит array JSON (пример: ["meeting reminder","email received"]), вторая строка содержит срочное уведомление, которое нужно add

Ожидаемый результат: array после добавления срочного уведомления в beginning, отображённый с помощью print_r()

Попробуйте сами

<?php
// Read the JSON array of notifications
$jsonInput = fgets(STDIN);
$notifications = (array)json_decode($jsonInput, true);

// Read the urgent notification to add
$urgentNotification = trim(fgets(STDIN));

// TODO: Write your code below to add the urgent notification to the beginning of the array

// Вывести итоговый массив
print_r($notifications);
?>
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Логика и управление потоком

Потренируйтесь самостоятельно: Онлайн-компилятор PHP