sandrinoo Posté 20 Novembre 2014 Posté 20 Novembre 2014 Et oui encore moi avec tous mes problèmes d'array... J'ai 2 tableaux et j'aurais voulu les comparer pour sortir seulement les valeurs en plus du tableau $val1 (qui ne sont pas dans $val2). Donc dans le cas ci-dessous les lignes avec les valeurs 111 et 222.$val1 = array( array(1, 'produit', 185), array(2, 'produit', 425), array(3, 'produit', 111) array(4, 'produit', 222));$val2 = array( array(1, 'produit', 185), array(2, 'produit', 425));J'ai testé array_diff($val1, $val2); mais ca ne marche pas car je pense que mon tableau est multidimensionnel (??)Je pense qu'il faut faire un code de ce type array_diff($val1[2], $val2[2], 'compare_fonct')); mais j'ai du mal avec la fonction, beaucoup trop compliqué pour moi ça... Alors si on peut me donner un dernier coup de main pour ces histoires d'array pour finir ce week-end ça serait le bienvenu...
khalid-ref Posté 20 Novembre 2014 Posté 20 Novembre 2014 tu peut faire une condition if pour la première valeur du $val2 par toutes les valeurs de $val1 puis la 2ème valeur du $var2 avec toutes les valeurs de $val1...etc
BlackPage Posté 21 Novembre 2014 Posté 21 Novembre 2014 Salut, Normalement un truc dans ce gout doit fonctionner : $result = array(); foreach($val1 as $key => $value){ if(!in_array($value, $val2)){ $result[] = $value; } } Tu auras la liste des éléments non trouvés dans $val2 dans le tableau $result; A adapter certainement un peu mais l'esprit y est^^ Bon courage !
SStephane Posté 21 Novembre 2014 Posté 21 Novembre 2014 http://php.net/manual/fr/function.array-diff.phpça va plus vite
Message populaire. sandrinoo Posté 21 Novembre 2014 Auteur Message populaire. Posté 21 Novembre 2014 Merci Blackpage ton code fonctionne ! Par contre je fais une erreur quelquepart avec array_diff pour que ca fonctionne pas : $val1 = array( array(1, 'produit', 185), array(2, 'produit', 425), array(3, 'produit', 111), array(4, 'produit', 222)); $val2 = array( array(1, 'produit', 185), array(2, 'produit', 425)); $result = array_diff($val1,$val2); print_r($result); 1
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant