Maison  >  Article  >  développement back-end  >  Comment supprimer des données identiques du tableau php

Comment supprimer des données identiques du tableau php

PHPz
PHPzoriginal
2023-04-27 16:38:13567parcourir

En programmation PHP, le tableau est un type de données que nous utilisons souvent. Contrairement à une variable unique, un tableau peut stocker plusieurs valeurs. Cependant, nous devons parfois supprimer les valeurs en double d'un tableau pour garantir l'intégrité et l'exactitude des données. Dans cet article, nous présenterons la méthode d'implémentation permettant de supprimer les données identiques dans un tableau PHP.

Méthode 1 : utilisez la fonction array_unique

La fonction array_unique en PHP peut nous aider à supprimer rapidement les éléments en double du tableau et à ne conserver que les valeurs uniques. Cette fonction accepte un tableau comme argument et renvoie un nouveau tableau contenant uniquement des valeurs uniques.

Exemple de code :

<?php
  // 创建一个包含重复元素的数组
  $array = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;a&#39;, &#39;d&#39;, &#39;e&#39;, &#39;b&#39;);
  // 使用array_unique函数去除相同的数据
  $unique_array = array_unique($array);
  // 打印去重后的数组
  print_r($unique_array);
?>

Résultat de sortie :

Array
(
    [0] => a
    [1] => b
    [2] => c
    [4] => d
    [5] => e
)

Comme vous pouvez le voir, le résultat de sortie ne contient que des valeurs uniques et conserve leur ordre dans le tableau d'origine.

Méthode 2 : utiliser la fonction de bouclage et in_array

En plus d'utiliser la fonction array_unique, nous pouvons également supprimer les éléments en double en bouclant le tableau et en utilisant la fonction in_array. La fonction in_array est utilisée pour déterminer si une valeur existe dans le tableau. Si elle existe, elle renvoie vrai, sinon elle renvoie faux.

Exemple de code :

<?php
  // 创建一个包含重复元素的数组
  $array = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;a&#39;, &#39;d&#39;, &#39;e&#39;, &#39;b&#39;);
  // 创建一个空数组用于存储唯一的值
  $unique_array = array();
  // 循环数组并去除相同的数据
  foreach($array as $value) {
    if(!in_array($value, $unique_array)) {
      array_push($unique_array, $value);
    }
  }
  // 打印去重后的数组
  print_r($unique_array);
?>

Résultat de sortie :

Array
(
    [0] => a
    [1] => b
    [2] => c
    [4] => d
    [5] => e
)

Vous pouvez également voir que le résultat de sortie ne contient que des valeurs uniques et conserve leur ordre dans le tableau d'origine.

Méthode 3 : utilisez la fonction array_flip

Une autre façon de supprimer les données en double consiste à utiliser la clé du tableau pour supprimer les doublons. En PHP, si deux ou plusieurs valeurs identiques apparaissent dans un tableau donné, la dernière valeur écrase la valeur précédente. Par conséquent, nous pouvons utiliser une astuce pratique consistant à utiliser la fonction array_flip pour prendre les valeurs comme clés, puis les reconvertir en tableau, ce qui supprimera les valeurs en double.

Exemple de code :

<?php
  // 创建一个包含重复元素的数组
  $array = array(&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;a&#39;, &#39;d&#39;, &#39;e&#39;, &#39;b&#39;);
  // 使用array_flip函数来去除相同的数据
  $unique_array = array_flip($array);
  $unique_array = array_keys($unique_array);
  // 打印去重后的数组
  print_r($unique_array);
?>

Résultat de sortie :

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
)

Comme vous pouvez le voir, le résultat de sortie ne contient que des valeurs uniques et conserve leur ordre dans le tableau d'origine.

Résumé :

En PHP, vous pouvez facilement supprimer les éléments en double d'un tableau à l'aide de fonctions telles que array_unique, in_array, array_flip, etc. La méthode à choisir dépend des besoins spécifiques et des scénarios d'application. Quelle que soit la méthode utilisée, il convient de veiller à préserver l'ordre dans le tableau d'origine afin de garantir l'intégrité et l'exactitude des données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn