Supprimer une ligne d'un tableau à entrées identiques

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Supprimer une ligne d'un tableau à entrées identiques

Re: Supprimer une ligne d'un tableau à entrées identiques

par dryzd » 24 juin 2010, 09:14

Pas du tout ;)
Mais comme j'ai fait mon schuffle et que ça tourne très bien, je ne vais pas modifier mon code là. Par contre, je garde ton idée pour une prochaine fois !!!

Re: Supprimer une ligne d'un tableau à entrées identiques

par Nours312 » 22 juin 2010, 01:28

juste par hasard tu as testé un truc dans ce style :
$result = array_rand($tableau);
unset(current($tableau));

Re: Supprimer une ligne d'un tableau à entrées identiques

par dryzd » 21 juin 2010, 23:47

J'ai contourné le problème en faisant un schuffle tu tableau puis en supprimant la première ligne sur une boucle.
==> RESOLU

Supprimer une ligne d'un tableau à entrées identiques

par dryzd » 21 juin 2010, 23:14

Bonsoir,

Voilà, j'ai ce tableau :
$tableau = array(3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,2,2,4,4);

Je boucle sur un array_rand pour extraire une valeur au hasard.
$result = array_rand($tableau);

A chaque fois, dans l'idéal, la ligne trouvée doit être supprimée.
unset($tableau[$result]);

Mais quand je fais cet unset, ca supprime toutes les lignes ayant la même valeur. Si par exemple, array_rand sort un 4, unset supprime alors les deux 4. Pas bien ... je ne voudrai en supprimer qu'un seul.

Amis développeurs, pourriez-vous m'aider ?

Je pense qu'il faille faire un tableau en array(1=>3, 2=>3 ...). Est-ce la solution ? Comment supprimer la ligne trouvée ensuite ?

Merci de votre aide :D