Eliminar con 'array_pop'
Parte de la sección Lógica y Flujo del Journey de PHP de Coddy — lección 11 de 68.
La función array_pop() elimina el último elemento de un array y devuelve ese valor eliminado. A diferencia de array_push(), que añade elementos, esta función acorta tu array en un elemento cada vez que la usas.
Así es como funciona:
<?php
$tasks = ["wash dishes", "do laundry", "buy groceries"];
$completedTask = array_pop($tasks);
echo $completedTask; // Salida: buy groceries
print_r($tasks); // Salida: Array ( [0] => wash dishes [1] => do laundry )
?>Ten en cuenta que array_pop() modifica el array original y devuelve el elemento eliminado. Esto lo hace perfecto para escenarios en los que necesitas procesar elementos desde el final de una lista, como completar la última tarea de una lista de tareas pendientes o eliminar el elemento más reciente de una pila.
Si intentas usar array_pop() en un array vacío, devolverá null sin causar un error. Esta función es particularmente útil cuando trabajas con arrays como pilas, donde agregas elementos al final y los eliminas del final en un patrón "last in, first out" (último en entrar, primero en salir).
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 tareas en formato JSON y un número que indica cuántas tareas completar. Lee ambas entradas, convierte la cadena JSON en un array, utiliza array_pop() el número especificado de veces para eliminar las tareas completadas del final e imprime el array final utilizando print_r().
Formato de entrada: Dos líneas - la primera línea contiene un array JSON (ejemplo: ["task1","task2","task3"]), la segunda línea contiene el número de tareas a completar (un número)
Resultado esperado: El array después de eliminar las tareas completadas, mostrado utilizando print_r()
Hoja de referencia
La función array_pop() elimina el último elemento de un array y devuelve ese valor eliminado:
<?php
$tasks = ["wash dishes", "do laundry", "buy groceries"];
$completedTask = array_pop($tasks);
echo $completedTask; // Salida: buy groceries
print_r($tasks); // Salida: Array ( [0] => wash dishes [1] => do laundry )
?>Puntos clave:
- Modifica el array original eliminando el último elemento
- Devuelve el elemento eliminado
- Devuelve
nullsi se usa en un array vacío (sin error) - Útil para operaciones "last in, first out" (pila)
Pruébalo tú mismo
<?php
// Leer la entrada del arreglo JSON
$jsonInput = fgets(STDIN);
$tasks = (array)json_decode($jsonInput, true);
// Leer el número de tareas a completar
$numToComplete = intval(fgets(STDIN));
// TODO: Escribe tu código a continuación
// Usa array_pop() para eliminar el número especificado de tareas
// Mostrar el arreglo final
print_r($tasks);
?>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