01net    Web


Actuellement en ligne : 540 Utilisateurs dont 24 dans Programmation et développement >S'inscrire      >S'identifier      >Recherche      >Aide  
modéré par A.Ouloube, Zplay, Beno@  
01net > Forum de 01net > Programmation et développement > PHP
> tableaux a DEUX DIMENSION /doublons
Passionné(e) d'internet, de logiciels, de forums ? 01net recrute...
Auteur
Message
 
<     1       >
pontarose
  
   
      ?   @     Posté le 14/05/2008 17:54:33  
Voter pour ce message
Bonjour,
Je suis dans le cas d'un tableau a deux dimension ($tab) et j'aimerais pour enlever les doublons ($tab_final)

for($i=0; $i<count($tab);$i++)
{
if(!in_array(".$tab[$i][0].",$tab_final))
$tab_final[]=array("".$tab[$i][0]."","".$tab[$i][1]."&q­uot;)
}

Mon problème est que j'ai toujours les doublons et je ne comprend pas pourquoi.
array_unique ne marche pas avec des tableaux a deux dimensions
Peut-on m'orienter?

Quelqu'un a une solution ?
Le N@in Vert
  Je pompe donc je suis.
  :-)
      ?   ^   @     Posté le 15/05/2008 16:00:35  
Voter pour ce message
Bonjour

Personnellement je comprend rien a ton problème...
Peut tu être plus précis et/ou essayer de reformuler certain truc ??
par exemple lis cet phrase : "Je suis dans le cas d'un tableau a deux dimension ($tab) et j'aimerais pour enlever les doublons ($tab_final)"
Je comprend pas son sens... (notamment la fin)
-------
Les aventure du donjon de naheulbeuk : www.penofchaos.com/donjon
Le site du zero : http://www.siteduzero.com
Mon site perso : www.lesitedesnains.ironie.org
pontarose
  
   
      ?   @     Posté le 15/05/2008 16:12:30  
Voter pour ce message
bojour,
"Je suis dans le cas d'un tableau a deux dimension (que je nomme: $tab) et j'aimerais pour enlever les doublons de ce tableau afin d'obtenir un tableau final sans doublons (que je nomme:$tab_final)

donc voiçi le script que j'ai écrit:
for($i=0; $i<count($tab);$i++)
{
if(!in_array(".$tab[$i][0].",$tab_final))
$tab_final[]=array("".$tab[$i][0]."","".$tab[$i][1]."&q­uot;)
}

Mon problème, suite au script ci-dessus, est que j'ai toujours les doublons dans mon tableau final($tab_final) et je ne comprend pas pourquoi.
Peut-on m'orienter?



Je ne peux pas utiliser la fonction array_unique car celle-ci ne s'applique aux tableaux a deux dimensions

Le N@in Vert
  Je pompe donc je suis.
  :-)
      ?   ^   @     Posté le 15/05/2008 16:30:31  
Voter pour ce message
C'est pas hyper claire mais la je crois que j'ai compris le problème (ce qui me gène le plus c'est le "j'aimerais pour enlever les doublons de ce tableau afin [...]" mais juste en retirant le pour sa deviens beaucoup plus claire ;) )

Pour te corriger ton truc qui n'as pas l'air de faire ce que tu veut j'ai besoin de savoir ce que tu veut dans ton finnalle par raport au permier :
On va faire un exemple et tu me dit si c'est sa :
avec :
$tab[0][0] = "chaussette";
$tab[0][1] = "rouge";

$tab[1][0] = "nain";
$tab[1][1] = "vert";

et tu veut obtenir :
$tab_final[0] = "chaussette,rouge";
$tab_final[1] = "nain,vert";

C'est bien sa ??
-->Message édité par Le N@in Vert le 15/05/2008 16:32:15<--
-------
Les aventure du donjon de naheulbeuk : www.penofchaos.com/donjon
Le site du zero : http://www.siteduzero.com
Mon site perso : www.lesitedesnains.ironie.org
pontarose
  
   
      ?   @     Posté le 15/05/2008 18:25:39  
Voter pour ce message
Désolé de ne pas avoir été clair

$tab[0][0] = "chaussette";
$tab[0][1] = "rouge";

$tab[1][0] = "nain";
$tab[1][1] = "vert";

$tab[2][0] = "chaussette";
$tab[2][1] = "rouge";

$tab[3][0] = "victor";
$tab[3][1] = "prénom";

et obtenir :
$tab_final[0][0] = "chaussette";
$tab_final[0][1] = "rouge";
$tab_final[1][0] = "nain";
$tab_final[1][1] = "vert";
$tab_final[2][0] = "victor";
$tab_final[2][1] = "prénom";

Je veux éliminer chausette et rouge car présent en double exemplaire


Le N@in Vert
  Je pompe donc je suis.
  :-)
      ?   ^   @     Posté le 15/05/2008 18:55:44  
Voter pour ce message
pontarose a écrit :
Désolé de ne pas avoir été clair

$tab[0][0] = "chaussette";
$tab[0][1] = "rouge";

$tab[1][0] = "nain";
$tab[1][1] = "vert";

$tab[2][0] = "chaussette";
$tab[2][1] = "rouge";

$tab[3][0] = "victor";
$tab[3][1] = "prénom";

et obtenir :
$tab_final[0][0] = "chaussette";
$tab_final[0][1] = "rouge";
$tab_final[1][0] = "nain";
$tab_final[1][1] = "vert";
$tab_final[2][0] = "victor";
$tab_final[2][1] = "prénom";

Je veux éliminer chausette et rouge car présent en double exemplaire

Ah oki
Je comprend mieu
Bas dans c'est cas la tu doit les testé toutes a chaque fois...
je ferais comme sa moi :

$c = 0;
for($i = 0 ; $i < count($tab) ; $i++)
{
for($y = $i ; $y >= 0 ; $y--)
{
if ($tab[$i][0] == tab_final[$y][0])
{
if ($tab[$i][1] == tab_final[$y][1])
{
$y = -1;
$c++;
}
}
}
if ($y == 0)
{
$tab_final[$i-$c][0] = $tab[$i][0];
$tab_final[$i-$c][1] = $tab[$i][1];
}
}


Voila si j'ai pas fait d'erreur sa devrais fonctionner...


-->Message édité par Le N@in Vert le 15/05/2008 18:58:35<--
-------
Les aventure du donjon de naheulbeuk : www.penofchaos.com/donjon
Le site du zero : http://www.siteduzero.com
Mon site perso : www.lesitedesnains.ironie.org
<     1       >

01net > Forum de 01net > Programmation et développement > PHP
> tableaux a DEUX DIMENSION /doublons

Aller à :

Page générée en : 0.083s - X2board 2.2

Nous contacter | Charte de confiance | Voir notice légale

Tous droits réservés © 1999 - 2008 Groupe Tests - 01net.


Sites du réseau 01net Network : 01net - 01men - Rmc.fr - Bfmtv.fr - Radiobfm.com - TousLesPodcasts - Micro Achat - Caractere.net -
Electronique.biz - Mesures.com - Transaction.fr

Partage de fichiers
Partagez vos gros fichiers entre amis, de façon totalement confidentielle et sécurisée.
Jeux
Nouveauté : Prenez le volant de votre tracteur et transformez une ferme en exploitation florissante !