Este es un ejercicio simple pero que nos servirá a la mayoría al trabajar con arreglos en PHP. En algún momento de nuestras vidas puede que nos topemos con el problema de eliminar un elemento de un arreglo en PHP.
Por ejemplo, si tenemos un carrito de compras como el que implementamos en el sistema de ventas MVC tendremos que saber quitar un elemento de un array en PHP.
Esto es muy simple, no importa cómo esté compuesto nuestro arreglo. Puede ser un arreglo de arreglos, de objetos, de números, de cadenas o de lo que sea, eso no importará.
Lo que tenemos que conocer es el índice del arreglo, es decir, ¿en cuál posición está nuestro elemento? y para ello podemos hacer una búsqueda secuencial como lo expliqué en este post.
Una vez que tenemos al índice, llamamos a array_splice cuya documentación se encuentra aquí.
Lo que hace esa función es remover o eliminar elementos de un arreglo y opcionalmente remplazarlos con otros. Como argumentos, en orden, recibe:
Pero bueno, eso confunde un poco. Para eliminar únicamente un elemento, le pasamos el arreglo, luego el índice o posición y finalmente el número 1; lo que hará que elimine únicamente un elemento a partir del índice que le damos, y que no lo remplace con nada.
Cuidado: esta función no devuelve el arreglo, devuelve los elementos eliminados y modifica directamente al arreglo; es decir, recibe al array por referencia.
Vamos a eliminar un elemento de nuestro arreglo de frutas. En este caso vamos a omitir la búsqueda secuencial para hacer más corta la explicación. Por cierto, estamos usando la sintaxis corta de arreglos.
<?php
$frutas = ["Manzana", "Pera", "Sandía", "Limón", "Naranja"];
#Imprimirlo antes de quitarle un elemento
echo "Antes de eliminar:\n";
print_r($frutas);
/*
Nota: aquí el índice lo definimos nosotros mismos, también
puedes buscarlo usando una búsqueda secuencial:
Este índice también puedes recibirlo por $_GET, a través de un formulario
o por el medio que desees
*/
# El índice le pertenece a Sandía
$indiceParaEliminar = 2;
$cuantos = 1;
# Eliminar 1 elemento a partir del índice 2
# Recordemos que array_splice modifica el arreglo, no necesitamos guardar su resultado
array_splice($frutas, $indiceParaEliminar, $cuantos);
echo "Después de eliminar:\n";
print_r($frutas);
?>
Como dice el código, el índice podemos recibirlo por cualquier método, y si deseamos buscarlo nosotros mismos entonces hacemos la búsqueda.
No guardamos el resultado de la llamada a la función porque array_splice modifica directamente al arreglo que le pasamos, y devuelve lo que eliminó, cosa que no nos importa por el momento.
La salida es esta:
En este caso lo hicimos con un arreglo de cadenas, pero funciona con arreglos de cualquier tipo.
Aquí puedes ver cómo ejecutar un archivo de PHP desde la terminal.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.
Ver comentarios