Agregar con 'array_unshift'
Parte de la sección Lógica y Flujo del Journey de PHP de Coddy — lección 12 de 68.
Mientras que array_push() agrega elementos al final de un array, la función array_unshift() hace lo contrario: agrega uno o más elementos al principio de un array. Esta función modifica el array original directamente y devuelve la nueva longitud del array.
Aquí está la sintaxis básica:
<?php
$tasks = ["buy groceries", "do laundry"];
array_unshift($tasks, "urgent meeting");
print_r($tasks); // Produce: Array ( [0] => urgent meeting [1] => buy groceries [2] => do laundry )
?>Observa cómo el nuevo elemento se convierte en el índice 0, y todos los elementos existentes se desplazan a índices superiores. Esta reindexación ocurre automáticamente—array_unshift() actualiza todas las claves numéricas para mantener la secuencia adecuada.
También puedes añadir múltiples elementos a la vez:
<?php
$priorities = ["medium task"];
array_unshift($priorities, "high priority", "critical task");
print_r($priorities); // Muestra: Array ( [0] => high priority [1] => critical task [2] => medium task )
?>Esta función es especialmente útil cuando necesitas priorizar elementos en una lista, como añadir tareas urgentes al principio de una lista de tareas pendientes o insertar elementos de alta prioridad al frente de una cola.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Desafío
FácilRecibirás dos entradas: un array inicial de notificaciones en formato JSON y una nueva notificación urgente para añadir. Lee ambas entradas, convierte la cadena JSON en un array, utiliza array_unshift() para añadir la notificación urgente al principio del array y muestra el array final utilizando print_r().
Formato de entrada: Dos líneas - la primera línea contiene un array JSON (ejemplo: ["meeting reminder","email received"]), la segunda línea contiene la notificación urgente a añadir
Resultado esperado: El array después de añadir la notificación urgente al principio, mostrado utilizando print_r()
Hoja de referencia
La función array_unshift() añade elementos al principio de un array, modificando el array original y devolviendo su nueva longitud:
<?php
$tasks = ["buy groceries", "do laundry"];
array_unshift($tasks, "urgent meeting");
print_r($tasks); // Salida: Array ( [0] => urgent meeting [1] => buy groceries [2] => do laundry )
?>Los nuevos elementos pasan a ser el índice 0, y los elementos existentes se desplazan automáticamente a índices superiores.
Puedes añadir varios elementos a la vez:
<?php
$priorities = ["medium task"];
array_unshift($priorities, "high priority", "critical task");
print_r($priorities); // Salida: Array ( [0] => high priority [1] => critical task [2] => medium task )
?>Pruébalo tú mismo
<?php
// Leer el array JSON de notificaciones
$jsonInput = fgets(STDIN);
$notifications = (array)json_decode($jsonInput, true);
// Leer la notificación urgente para añadir
$urgentNotification = trim(fgets(STDIN));
// TODO: Escribe tu código a continuación para añadir la notificación urgente al principio del array
// Mostrar el array final
print_r($notifications);
?>Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Lógica y Flujo
1Funciones avanzadas
Funciones anónimasClosures y 'use'Funciones de flechaFunciones callbackUso de 'call_user_func'Funciones variablesPaso por referenciaFunciones recursivasResumen: Miscelánea de funciones4Arreglos multidimensionales
Crear un arreglo 2DAcceder a elementos de un arreglo 2DModificar elementos de un arreglo 2DIterar con bucles anidadosArreglos asociativos 2DResumen: Ejercicio de cuadrícula simple2Manipulación avanzada de arrays
Agregar con 'array_push'Eliminar con 'array_pop'Agregar con 'array_unshift'Eliminar con 'array_shift'Fusionar arrays indexadosFusionar arrays asociativosExtraer con 'array_slice'Valores con 'in_array'Claves con 'array_search'Resumen: Ejercicio de Playlist3Ordenar Arrays
Ordenar arrays indexados de forma ascendenteOrdenar arrays indexados de forma descendenteOrdenar arrays asociativos por valorOrdenar arrays asociativos por claveOrdenación por orden naturalOrdenación personalizada con 'usort'Resumen: Ordenar tablas de clasificación