dédoublonner un tableau

niaf
Invité n'ayant pas de compte PHPfrance

29 mars 2005, 15:27

Bonjour,

J'ai un tableau $tab[] avec des valeurs que j'aimerais dédoublonner.
Je n'arrive pas à conserver mon tableau en utilisant la fonction array_unique().

avec ce code:
$tab2[]= array_unique($tab);
for($nb=0; $tab2[$nb] != false; $nb++) {
echo $tab2[$nb]."<br>";
}

j'obtiens:

Array

et non plus mon tableau sans doublon..
Ou est l'erreur ? :cry:

Eléphant du PHP | 200 Messages

29 mars 2005, 15:28

print_r au lieu de echo , non ?
Univers divided by 0 - cucumber error - reboot

Invité
Invité n'ayant pas de compte PHPfrance

29 mars 2005, 15:36

ba le print_r donne un affichage bizarre avec des fleches...moi j'aimerais simplement que les valeurs s'affichent à la ligne à la suite des autres...

Administrateur PHPfrance
Administrateur PHPfrance | 3131 Messages

29 mars 2005, 16:19

$tab contient des tableaux. array_unique ne sert qu'à dédoublonner des variables scalaires (booléens, entier, chaines).

toony
Invité n'ayant pas de compte PHPfrance

29 mars 2005, 17:01

comment faire donc?
C'est impossible avec un tableau?

Administrateur PHPfrance
Administrateur PHPfrance | 3131 Messages

29 mars 2005, 17:28

Oui, tableaux et objets n'ayant pas de fonction de comparaison prédéfinie comme les autres valeurs scalaires (l'opérateur ==), il est impossible de dédoublonner un tableau contenant des valeurs non scalaires avec les fonctions standard. En clair, si tu as un tableau de tableau, tu dois écrire ta propre fonction de comparaison, et ta propre fonction de dédoublonnage, en t'inspirant par exemple des commentaires que tu trouveras ici : http://www.php.net/manual/fr/function.array-unique.php