Pendant le processus de développement PHP, nous rencontrons souvent des situations dans lesquelles nous devons effacer les données en double dans des tableaux. S'il y a des données en double dans le tableau, cela provoquera probablement des exceptions dans le programme et les résultats ne seront pas ceux attendus. Il est donc très important d'effacer les données en double dans le tableau. Cet article explique comment effacer les données en double des tableaux en PHP.
1. Utilisez la fonction array_unique
La fonction array_unique est une fonction fournie avec PHP et peut être utilisée pour supprimer les données en double dans le tableau. La syntaxe de la fonction array_unique est la suivante :
array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )
Parmi eux, $array est le tableau qui doit être débarrassé des données en double, et $sort_flags est un paramètre facultatif utilisé pour contrôler le comportement de la fonction.
Par exemple :
<?php $arr = array("PHP", "is", "the", "best", "programming", "language", "PHP"); $new_arr = array_unique($arr); print_r($new_arr); ?>
Le résultat du code ci-dessus est :
Array ( [0] => PHP [1] => is [2] => the [3] => best [4] => programming [5] => language )
Comme vous pouvez le voir, la fonction array_unique supprime avec succès les données en double dans le tableau. A noter que la fonction array_unique utilise la méthode SORT_STRING pour trier le tableau par défaut. Si vous devez trier d'une autre manière, vous pouvez utiliser le paramètre $sort_flags pour le définir.
Il convient de mentionner que la fonction array_unique ne conserve pas les noms de clés dans le tableau d'origine lors de l'effacement des données, mais uniquement les valeurs. Si vous devez conserver le nom de la clé, vous pouvez utiliser la méthode décrite ci-dessous.
2. Utilisez la méthode de parcours en boucle
En plus d'utiliser la fonction array_unique, vous pouvez également utiliser la méthode de parcours en boucle pour effacer les données en double dans le tableau. L'opération spécifique est la suivante :
<?php $arr = array("PHP", "is", "the", "best", "programming", "language", "PHP"); $new_arr = array(); foreach($arr as $value) { if(!in_array($value, $new_arr)) { $new_arr[] = $value; } } print_r($new_arr); ?>
Le résultat de sortie du code ci-dessus est le même que la fonction array_unique, et les données en double dans le tableau sont également effacées avec succès.
Il convient de noter que la méthode de parcours en boucle est moins efficace lors du traitement d'une grande quantité de données, il est recommandé d'utiliser la fonction array_unique pour l'effacement.
3. Utilisez les fonctions array_keys et array_values
Si vous devez conserver les noms de clés dans le tableau d'origine, vous pouvez utiliser les fonctions array_keys et array_values . L'opération spécifique est la suivante :
<?php $arr = array("PHP", "is", "the", "best", "programming", "language", "PHP"); $arr = array_unique($arr); $new_arr = array(); foreach($arr as $key => $value) { $new_arr[$key] = $value; } print_r($new_arr); ?>
Le résultat de sortie du code ci-dessus est toujours le tableau après la suppression des données en double, mais les noms de clés dans le tableau d'origine sont conservés.
Résumé
La suppression des données en double dans un tableau est une opération de base dans le développement PHP. Si elle n'est pas gérée correctement, elle est susceptible de provoquer des exceptions dans le programme et des résultats non conformes aux attentes. Cet article présente plusieurs méthodes couramment utilisées pour supprimer les données en double des tableaux. Vous devez choisir en fonction de la situation réelle lors de leur utilisation.
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!