• [^] # Re: Mauvaise compréhension des paramètres $a et $b

    Posté par . En réponse au message bug PHP5 ou bug entre le clavier et la chaise ?. Évalué à 1.

    j'oubliais de préciser que http://bugs.php.net n'a aucune entrée et que http://bugs.php.net utilise des objets en argument de array_udiff.

    j'espere que cette longue trace coupera court à toute tentative de réponse sans avoir lu et testé mon bout de code.

    pour ceux qui ont encore un doute ( et je vais finir par paraitre plus execrable que je ne le suis réellement :) ) sur la lecture de mon bout de code :

    - je crée un tableau $a1.
    - je copie $a1 dans $a2.
    - je change 1 valeur dans $a2.
    - je déclare 4 fonctions mns_diffu_1 mns_diffu_2 mns_diffu_3 mns_diffu_algo .
    - je teste chacune des fonctions avec array_udiff et j'en affiche le résultat via un print_r ( print recursif de PHP ).

    mes fonctions sont :

    - mns_diffu_1( $a, $b ) qui retourne le array_diff entre $a et $b
    - mns_diffu_2( $a, $b ) qui retourne le array_diff_assoc entre $a et $b
    - mns_diffu_3( $a, $b ) qui retourne 1 si le array_diff entre $a et $b est non vide sinon 0
    - mns_diffu_algo( $a, $b ) qui affiche les K1 respective de $a et $b et retourne leur array_diff

    toutes ces fonctions fonctionnent, dans un contexte neutre
    print_r( mns_diffu_1( array( 1, 2, 3 ), array( 3, 1, 4 ) ) );

    Je ne dis pas que j'ai mis tous les tests possibles puisqu'il y en a d'autres, mais je n'ai pas trouvé d'autres plus significatif . il se peut aussi que j'en ai oublié un test qui aurait pu etre significatif.

    Tout ca pour dire que mon probleme n'est pas un probleme de "je suis en train d'apprendre à coder" mais un truc un peu plus couillu pour du code libre sur mon temps libre.

    pour donner le contexte, j'ai un formulaire en ligne à champs variables, et les anciennes valeurs dans une bases ... ce bout de code viendra juste faire "le diff entre ce que j'ai deja et ce que je vais avoir de nouveau" pour permettre de mettre a jour les bons champs, effacer ceux qui le doivent et ajouter ce qui le doivent.

    est ce que cela aide ? non.

    mes questions sont :

    - est ce le role de array_udiff de faire un diff entre deux listes selon une regle de l'utilisateur ? et je présuppose que oui d'apres la doc.

    - est ce un bug de array_udiff ? je suppute que oui avec moins de certitude car la doc n'est pas clair et que j'ai pu faire un mauvais usage de la fonction.

    j'ai donc l'impression d'etre désagréable, alors que le probleme est sérieux et que je n'ai pas une once d'élément de réponse à part un semblant de "ta pas bien lu la doc".