Para eliminar los elementos duplicados en un array habrá que utilizar las funciones array_unique
(enlace externo, en inglés) y array_values
(enlace externo, en inglés).
Si tenemos el siguiente array con años:
<?php
$lista = array(2010,2009,1999,2010,2010,2008,2010);
?>
Y queremos quitar los años duplicados habrá que utilizar array_unique
para quitar los duplicados:
<?php
$lista = array(2010,2009,1999,2010,2010,2008,2010);
$listaSimple = array_unique($lista);
?>
Que devolverá:
Array ( [0] => 2010 [1] => 2009 [2] => 1999 [5] => 2008 )
Como se puede observar se han eliminado duplicados, pero los índices de cada elemento no van seguidos (salta del 2 al 5). Para que vayan seguidos habrá que aplicar array_values
:
<?php
$lista = array(2010,2009,1999,2010,2010,2008,2010);
$listaSimple = array_unique($lista);
$listaSimpleFinal = array_values($listaSimple);
?>
Y ahora devolverá el array con los índices adecuados:
Array ( [0] => 2010 [1] => 2009 [2] => 1999 [3] => 2008 )