26
Indiquez l’intérêt que vous portez à cette question
3

Antidoublons {!doublons} vs Tableau #ARRAY : dans quels cas utiliser l’un ou l’autre ?

Pour réunir en un seul panier les objets sélectionnés par différentes boucles... et récupérer ensuite cette récolte dans une autre boucle, on peut :

  • Utiliser l’antidoublons... par exemple
    1. Avec {doublons panier}, je prélève objets souhaités, dans mes différentes boucles de sélection, tout en éliminant les éventuels doublons ;
    2. On récupère ensuite le contenu de son panier dans une boucle de restitution avec {!doublons panier}
  • Utiliser les tableaux... par exemple
    1. Avec #SET{panier,#ARRAY}, je déclare un tableau avant ma boucle
    2. Puis dans ma boucle de sélection, avec #SET{panier,#GET{panier}|push{#ID_OBJET}}, je mémorise dans ce tableau les identifiants des objets sélectionnés
    3. Enfin, avec le critère {id_objet IN #GET{panier}}, on reprend la sélection dans une autre boucle

A priori, l’antidoublons est plus rapide à coder pour (presque) le même résultat... tandis que le tableau semble avoir l’avantage de conserver l’ordre dans lequel on y a mis (avec |push) les clés des éléments.

Dans quel cas privilégier l’une ou l’autre de ces techniques ? Selon la quantité d’informations à traiter, laquelle des deux serait plus performante côté serveur ?

Et puis, si le tableau permet de savoir que l’on sélectionne par exemple les identifiants des objets ou les titres... ou autre... que sélectionne le mystérieux {doublons} ? Uniquement les identifiants des objets ?

Merci par avance !