Maison >développement back-end >tutoriel php >Comment supprimer efficacement les tableaux en double d'un tableau multidimensionnel en PHP ?

Comment supprimer efficacement les tableaux en double d'un tableau multidimensionnel en PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-24 11:39:23890parcourir

How to Efficiently Remove Duplicate Arrays from a Multi-Dimensional Array in PHP?

Suppression des doublons des tableaux multidimensionnels en PHP

Lorsque vous travaillez avec des tableaux multidimensionnels, il peut être nécessaire d'éliminer les valeurs en double pour garantir l'intégrité des données. Voici une approche efficace pour y parvenir en PHP.

Utilisation de array_map et Serialize

Nous pouvons exploiter la fonction array_map pour appliquer la fonction Serialize à chaque tableau du tableau multidimensionnel. La sérialisation convertit chaque tableau en une représentation sous forme de chaîne unique. Ensuite, array_unique élimine les représentations de chaîne en double. Enfin, nous désérialisons les chaînes uniques dans leurs tableaux correspondants.

$input = array_map("unserialize", array_unique(array_map("serialize", $input)));

Exemple

Considérons un exemple de tableau multidimensionnel.

$input = [
    [0 => 'abc', 1 => 'def'],
    [0 => 'ghi', 1 => 'jkl'],
    [0 => 'mno', 1 => 'pql'],
    [0 => 'abc', 1 => 'def'],
    [0 => 'ghi', 1 => 'jkl'],
    [0 => 'mno', 1 => 'pql'],
];

Après avoir appliqué le au-dessus du code, les valeurs en double sont supprimées, ce qui donne :

[
    [0 => 'abc', 1 => 'def'],
    [0 => 'ghi', 1 => 'jkl'],
    [0 => 'mno', 1 => 'pql'],
]

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