Artículos
PHP

Eliminar elementos duplicados de un array en PHP

10/Ene/2011

Mediante un código muy sencillo vamos a poder eliminar elementos duplicados de un array en PHP. Vamos a ver que la utilización de dos funciones nos pueden resolver este engorroso problema. Para que al final los valores que aparezcan en el array sean únicos.

Lo primero vamos a ver como sería un array con elementos duplicados:

$lista = array(1,1,2,3,4,4,4,5,6,7,7,8,9,10,10);

Ahora, sobre este array vamos a aplicar la función array_unique(). Esta función elimina los elementos duplicados que existan en el array. En este momento podemos pensar… «pues era extremadamente fácil»… pero, por desgracia, no es así. array_unique() elimina los elementos duplicados, si bien no reasigna los índices del array y nos dejaría índices vacíos. Estos serían los índices en los que estaban los elementos duplicados.

Una vez ejecutada la función array_unique() sobre el array que teníamos definido inicialmente, tendríamos la siguiente estructura:

$lista[0] -> 1
$lista[1] -> ''
$lista[2] -> 2
$lista[3] -> 3
$lista[4] -> 4
$lista[5] -> ''

El contenido del array lo podemos ver utilizando la función print_r() que nos mostrará la información mostrada antes.

En esta situación lo que necesitamos es apoyarnos en una segunda función llamada array_values(). Esta función retorna todos los valores del array y los re-indexa. De esta manera ya tenemos eliminados los índices vacíos.

Así el código que nos permite eliminar elementos duplicados de un array en PHP será el siguiente:

$lista_simple = array_values(array_unique($lista));

Vemos que ambas funciones devuelven un array, es por ello que hay que asignarlo a un nuevo array.

Bueno, parece que al final eliminar elementos duplicados de un array en PHP si que era sencillo. :-D

Código Fuente

Descárgate el código fuente de Eliminar elementos duplicados de un array en PHP
Y si te ha gustado nuestro código fuente puedes regalarnos una estrella Star
Suscribir
Notificar de
guest
1 Comentario
Recientes
Anteriores Más votados
Opiniones integradas
Ver todos los comentarios