Blog de programación, errores, soluciones

Chose Language:
Author: Admin/Publisher |finished | checked

PHP array_unique

La función de PHP array_unique elimina los valores que estén duplicados en el array devolviendo un array nuevo sin los duplicados.

Description / Descripción
array_unique(array $array, int $flags = SORT_STRING): array
Sintaxis / Sintax
$new_array = array_unique($my_array);

Parametros

$array – el array al que se le eliminaran los valores duplicados

$flags – este parámetro es opcional ya que su valor por defecto es SORT_STRING, con el puedes cambiar la manera en que se comparan los valores.

Comparison type flags:

  • SORT_REGULAR – no hay cambios en los tipos, no hay casting
  • SORT_NUMERIC – compara los item de forma numerica
  • SORT_STRING – compara los item como string
  • SORT_LOCALE_STRING – compara ítems como strings, basados en la configuración regional en uso.
para que se entienda mejor vea que una comparación sera variableA === variableB, cuando estamos cambiando el comparision type flag lo que estamos haciendo es practicamente esto (type)variableA === (type)variableB

Retorno

Retorna el array sin datos duplicados

Ejemplos en PHP array_unique

En este ejemplo veremos un caso en el que talvez no queramos hacer que los valores sean unicos, en otros casos array_unique funcionaria bastante bien. En este caso como el que sigue tenemos que tener en cuenta pensar antes de aplicar esta función. ¿Va a afectarme esto?

Ejemplo simple
$caracteristicas_auto = [
    "marca" => "Toyota",
    "modelo" => "Camry",
    "año" => 2022,
    "color" => "Azul",
    "color_llantas" => "Azul",
    "motor" => "2.5L",
    "tracción" => "Delantera"
];
var_dump(array_unique($caracteristicas_auto));
array(6) {
  ["marca"]=>
  string(6) "Toyota"
  ["modelo"]=>
  string(5) "Camry"
  ["año"]=>
  int(2022)
  ["color"]=>
  string(4) "Azul"
  ["motor"]=>
  string(4) "2.5L"
  ["tracción"]=>
  string(9) "Delantera"
}
Category: php
Something wrong? If you found an error or mistake in the content you can contact me on Twitter | @luisg2249_luis.
Last 4 post in same category