for_merge

Permet de définir une répétition sur une function ou une variable. Il décrit un contexte se répétant sur la page.

Toutes les clés qui suivent se répéteront à chaque apparition de ce contexte.

Contrairement au for classique les clés qui suivent seront mergées dans un unique dictionnaire pour chaque répétition au lieu de générer un tableau de dictionnaire.

Il est donc recommandé d'utiliser for_merge avec des clés dynamiques.

Exemple :

Pour tous les éléments //div[@class='t'] alors les 2 clés suivantes seront parcourues et leurs xpath respectifs tiendront compte du contexte de répétition.

Résultat :

Il également possible assigner un nom au contexte de répétition avec le mot clé in, permettant ainsi d'y accéder avec $this:

Dans ce cas la variable définie contient automatiquement 4 clés :

  • $value : la valeur active
  • $key : la clée ou l'index actif
  • $result : le contenue intégrale de la liste utilisée par la boucle for
  • $this : le contenue des clés/valeurs définie dans la boucle for (voir aussi $this)

Si aucun nom n'est défini dans le statement fo_merge alors le nom _for est automatiquement définie.

Exemple :

Voir aussi