Comment supprimer les données en double en php

藏色散人
Libérer: 2023-03-03 19:56:01
original
6405 Les gens l'ont consulté

Comment supprimer les données en double en PHP : 1. Utilisez la fonction "array_unique" pour supprimer directement les valeurs en double dans un tableau ; 2. Utilisez la fonction "array_flip" et la fonction "array_keys" pour supprimer les doublons. données.

Comment supprimer les données en double en php

Recommandé : "Tutoriel vidéo PHP"

Suppression des données en double des tableaux dans deux méthodes PHP

1. Utilisez directement la fonction array_unique

Utilisez la fonction array_unique pour supprimer directement les valeurs en double dans un tableau, en ne conservant que la première occurrence des valeurs en double et celles correspondantes. la valeur clé

peut être trouvée dans le manuel PHP

Exemple 1 :

$input = array("a" => "green", "red", "b" => "green", "blue", "red");
$result = array_unique($input);
print_r($result);
此时输出:
Array
(
    [a] => green
    [0] => red
    [1] => blue
)
Copier après la connexion

Remarque : dans la fonction array_unique, si int(3) et string( 1) Quand ' 3', la fonction considérera les deux valeurs comme la même valeur, et ne conservera que la valeur qui apparaît en premier

Exemple 2 :

$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);
Copier après la connexion

A ce moment, elle affichera :

array(2) {
  [0] => int(4)
  [2] => string(1) "3"
}
Copier après la connexion

2. Utilisez la fonction array_flip et la fonction array_keys ensemble

Il est très pratique d'utiliser la fonction array_unique, mais il y a une chose, la fonction array_unique ne changera pas la valeur de la clé d'origine. de la valeur conservée. Dans certains cas, il est difficile d'exploiter un nouveau tableau. À ce stade, vous pouvez utiliser la fonction array_flip et la fonction array_keys

fonction array_flip

pour échanger les valeurs. ​​et les valeurs clés du tableau spécifié. Les clés deviennent des valeurs et les valeurs du tableau d'origine deviennent des clés, et si la même valeur apparaît plusieurs fois, la dernière clé devient sa valeur et toutes les autres le sont. perdu.

Par exemple :

$trans = array("a" => 1, "b" => 1, "c" => 2);
$trans = array_flip($trans);
print_r($trans);
Copier après la connexion

La sortie à ce moment est :

Array
(
    [1] => b
    [2] => c
)
Copier après la connexion

fonction array_keys

la fonction array_keys peut renvoyer tout ou partie des noms de clés du tableau , c'est plus facile à comprendre. Si serch_value est spécifié, la valeur clé de la valeur de requête spécifiée est renvoyée

Par exemple :

$array = array(0 => 100, "color" => "red");
print_r(array_keys($array));
$array = array("blue", "red", "green", "blue", "blue");
print_r(array_keys($array, "blue"));
$array = array("color" => array("blue", "red", "green"),
               "size"  => array("small", "medium", "large"));
print_r(array_keys($array));
Copier après la connexion

À ce moment, le résultat sera :

Array
(
    [0] => 0
    [1] => color
)
Array
(
    [0] => 0
    [1] => 3
    [2] => 4
)
Array
(
    [0] => color
    [1] => size
)
Copier après la connexion

Après avoir introduit les deux fonctions Après utilisation, lorsque vous rencontrez un tableau avec beaucoup de données répétées et que vous souhaitez éliminer les données répétées au milieu et commencer à compter les valeurs clés à partir de « 0 », vous pouvez utilisez d'abord la fonction array_flip sur la fonction, puis utilisez la fonction array_keys sur le nouveau tableau. , vous pouvez obtenir un

Supplément : lorsque l'éditeur a introduit la fonction array_keys, il m'est soudainement venu à l'esprit qu'il devrait y avoir un fonction qui peut extraire les valeurs de tous les tableaux. Après vérification, il existe bien une fonction array_value, qui peut renvoyer toutes les valeurs d'un tableau. La valeur est enregistrée dans un nouveau tableau, de sorte que. la valeur clé peut être comptée à partir de « 0 ». Par conséquent, si vous souhaitez atteindre l'objectif de cet article, vous pouvez également utiliser d'abord la fonction array_unique, puis utiliser la fonction array_value dessus.

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!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal