Tableau Unique avec Tableau Associatif - Supprimer les Doublons
J'ai un tableau associatif avec certains éléments en double. Par exemple, j'ai:
<?
$group_array = array('user_id'=>array(), 'user_first'=>array());
Qui sort quelque chose comme ci-dessous:
Array
(
[user_id] => Array
(
[0] => 594
[1] => 597
[2] => 594
)
[user_first] => Array
(
[0] => John
[1] => James
[2] => John
)
)
Je tiens à désinfecter l'ensemble de ce tableau, de sorte que seul l'utilisateur John va montrer de temps (basé sur user_id).
J'ai essayé ce qui suit:
<?php
$unique = array_unique($group_array);
print_r($unique);
Mais il ne semble pas fonctionner. Toutes les autres idées de comment je peux supprimer les éléments en double dans le tableau?
Toute aide serait super!
OriginalL'auteur Dodinas | 2011-02-02
Vous devez vous connecter pour publier un commentaire.
Une autre approche serait de trouver l'unique
user_id
s, et, surtout, de leur matrice de touches, puis ne garder que les valeurs correspondantes de chacune des colonnes.OriginalL'auteur salathe
Couple de choses:
la fonction array_unique n'est pas de manière récursive, les sous-matrices de
Lire le manuel: http://php.net/manual/en/function.array-unique.php
"Deux éléments sont considérés comme égaux si et seulement si (string) $elem1 === (string) $elem2. En d'autres mots: lorsque la chaîne de la représentation est la même. Le premier élément sera utilisé."
Dans votre cas $elem1 et $elem2 sont les deux tableaux
OriginalL'auteur Deep Kapadia
Ce script supprime les doublons sur user_id et conserve plusieurs
firstnames si leurs identifiants sont différents:
de sortie:
OriginalL'auteur Toto
Une solution possible est d'utiliser le filtrage des effets secondaires de
array_combine(...)
:Donc, nous avons obtenu le tableau
Pour restaurer la structure d'origine, nous ne peuvent tout simplement extraire les clés et les valeurs:
Résultat:
OriginalL'auteur automatix