Page 1 sur 1

Probléme de tableau !

Posté : 18 juil. 2021, 19:13
par MarYas
Bonjour à tous je voulais savoir, serait-il possible de vérifier les doublons mais de clé/valeur et valeur/cle CAD voici un exemple.
$tab1 = ["a" => "b"];
$tab2 = ["b" => "a"];
$tab3 = ["c" => "d"]; // pr le fun
En gros ma question : es ce que je peux d'une façon ou d'une autre surprimer $tab2 car a=>b existe déjà ( peu importe le sens ) sans passer par un array_flip car j'ai plusieurs tableaux du coup pas terrible.
Merci pr vos réponses !

Re: Probléme de tableau !

Posté : 19 juil. 2021, 10:25
par @rthur
foreach() pour parcourir ton tableau à vérifier et à l'intérieur, pour chaque élément tu fais un in_array() et un array_key_exists()

Re: Probléme de tableau !

Posté : 20 juil. 2021, 21:17
par MarYas
Dsl je me suis mal expliqué dans mon exemple car c'est plutôt ça le code
$tab = array("0" => ["a" => "b"], "1" => ["b" => "a"], "2" =>[ "c" => "d"], etc ...);
Donc c'est plus compliqué que de faire de simple in_array !
Mais avec du calme et de la patience j'y suis arrivé !

C'est trop compliqué à expliqué mais je vais essayé j'ai remarqué que les doubles "b => a" car "a" => "b" existe déjà, se situé à la fin Longueur du tab de base (8) dans mon cas l'index des doubles étaient 8 puis 16,17 puis 24,25,26 puis 32,33,34,35 etc jusque 72.

Ensuite j'ai juste bouclé tout ça pour sortir un tableau avec les cle 8,16,17 etc

Ensuite un array_flip pour inverse clé valeur pour pouvoir comparer les clés dans les deux tab.

Ensuite avec un array_diff_key et j'ai eu mon tableau sans double !

PS : Aprés si quelqu'un à une méthode plus simple ou optimisé je suis preneur !