De la même manière que pour les blocs conditionnels, QuickModels autorise la construction des blocs de boucles imbriquées, en prenant simplement soin de nommer tous les éléments de chaque bloc de boucle (voir exemple ci-dessous).
Le compteur de boucle, balise <!--<c>-->
, et la clé de la valeur, balise <!--<k>-->
, peuvent être utilisées pour définir la variable de type "array" nécessaire pour les boucles imbriquées.
Clé "lang" | Clé "abrv" | Nombres |
---|---|---|
français | fr |
un deux trois |
anglais | en |
one two three |
espagnol | es |
uno dos tres |
italien | it |
un due tre |
allemand | de |
a zwei drei |
Clé "lang" | Clé "abrv" | Nombres |
---|---|---|
français | fr |
un deux trois |
anglais | en |
one two three |
espagnol | es |
uno dos tres |
italien | it |
un due tre |
allemand | de |
a zwei drei |
— Php —————————————————————— // Memorisation d'un tableau (array) imbriqué $qm->set('aLang', array( array('lang'=>'français','abrv'=>'fr'), array('lang'=>'anglais','abrv'=>'en'), array('lang'=>'espagnol','abrv'=>'es'), array('lang'=>'italien','abrv'=>'it'), array('lang'=>'allemand','abrv'=>'de') )); // Memorisation d'un tableau (array) imbriqué $qm->set('aNbr', array( 'fr'=>array('un','deux','trois'), 'en'=>array('one','two','three'), 'es'=>array('uno','dos','tres'), 'it'=>array('un','due','tre'), 'de'=>array('a','zwei','drei') )); // Mémorisation des tableaux (array) imbriqués $qm->set('aMulti', array( array('lang'=>'français','abrv'=>'fr','fr'=>array('un','deux','trois')), array('lang'=>'anglais','abrv'=>'en','en'=>array('one','two','three')), array('lang'=>'espagnol','abrv'=>'es','es'=>array('uno','dos','tres')), array('lang'=>'italien','abrv'=>'it','it'=>array('un','due','tre')), array('lang'=>'allemand','abrv'=>'de','de'=>array('a','zwei','drei')) )); — Html ————————————————————— <h4>Boucles imbriquées de tableaux imbriqués différents</h4> <table align="center" border="0" cellspacing="0" cellpadding="0" style="width: 500px; margin: 0px auto;"> <tr><th>Clé "lang"</th><th>Clé "abrv"</th><th>Nombres</th></tr> <!--<aLang><lang>--> <tr> <td><!--<val.lang><lang>--></td> <td><!--<val.abrv><lang>--></td> <td> <!--<aNbr.<!--<val.abrv><lang>-->><nbr>--> <!--<v><nbr>--><br /> <!--<end><nbr>--> </td> </tr> <!--<end><lang>--> </table> <h4>Boucles imbriquées du même tableau imbriqué</h4> <table align="center" border="0" cellspacing="0" cellpadding="0" style="width: 500px; margin: 0px auto;"> <tr><th>Clé "lang"</th><th>Clé "abrv"</th><th>Nombres</th></tr> <!--<aMulti><multi>--> <tr> <td><!--<val.lang><multi>--></td> <td><!--<val.abrv><multi>--></td> <td> <!--<aMulti.<!--<k><multi>-->.<!--<val.abrv><multi>-->><trad>--> <!--<v><trad>--><br /> <!--<end><trad>--> </td> </tr> <!--<end><multi>--> </table>
/*—————————————————————————*\ Memorisation des variables et valeurs On utilise la méthode "set()" avec deux arguments : 1. le premier est le nom, ou identifiant, de la variable 2. le second est la valeur à mémoriser puis à afficher NOTE : il faut entourer les noms et les valeurs avec des appostrophes '' ou des guillemets "", si vous avez besoin d'un de ces caractères à l'intérieur de la valeur, vous devrez le protéger avec un anti-slash \, par ex. \". IMPORTANT : évitez les caractères spéciaux ou accentués, ainsi que les espaces et les signes de ponctuation dans les nom des variables ; autorisés [a-zA-Z0-9_]. \*—————————————————————————*/ // Memorisation d'un tableau (array) imbriqué $qm->set('aLang', array( array('lang'=>'français','abrv'=>'fr'), array('lang'=>'anglais','abrv'=>'en'), array('lang'=>'espagnol','abrv'=>'es'), array('lang'=>'italien','abrv'=>'it'), array('lang'=>'allemand','abrv'=>'de') )); // Memorisation d'un tableau (array) imbriqué $qm->set('aNbr', array( 'fr'=>array('un','deux','trois'), 'en'=>array('one','two','three'), 'es'=>array('uno','dos','tres'), 'it'=>array('un','due','tre'), 'de'=>array('a','zwei','drei') )); // Mémorisation des tableaux (array) imbriqués $qm->set('aMulti', array( array('lang'=>'français','abrv'=>'fr','fr'=>array('un','deux','trois')), array('lang'=>'anglais','abrv'=>'en','en'=>array('one','two','three')), array('lang'=>'espagnol','abrv'=>'es','es'=>array('uno','dos','tres')), array('lang'=>'italien','abrv'=>'it','it'=>array('un','due','tre')), array('lang'=>'allemand','abrv'=>'de','de'=>array('a','zwei','drei')) )); //
<!-- |> --> <h3>Les blocs de boucles imbriquées : exemples</h3> <h4>Boucles imbriquées de tableaux imbriqués différents</h4> <p> <table align="center" border="0" cellspacing="0" cellpadding="0" style="width: 500px; margin: 0px auto;"> <tr><th>Clé "lang"</th><th>Clé "abrv"</th><th>Nombres</th></tr> <!--<aLang><lang>--> <tr> <td><!--<val.lang><lang>--></td> <td><!--<val.abrv><lang>--></td> <td> <!--<aNbr.<!--<val.abrv><lang>-->><nbr>--> <!--<v><nbr>--><br /> <!--<end><nbr>--> </td> </tr> <!--<end><lang>--> </table> </p> <h4>Boucles imbriquées du même tableau imbriqué</h4> <p> <table align="center" border="0" cellspacing="0" cellpadding="0" style="width: 500px; margin: 0px auto;"> <tr><th>Clé "lang"</th><th>Clé "abrv"</th><th>Nombres</th></tr> <!--<aMulti><multi>--> <tr> <td><!--<val.lang><multi>--></td> <td><!--<val.abrv><multi>--></td> <td> <!--<aMulti.<!--<k><multi>-->.<!--<val.abrv><multi>-->><trad>--> <!--<v><trad>--><br /> <!--<end><trad>--> </td> </tr> <!--<end><multi>--> </table> </p> <!-- <| -->
QuickModels - 0.01387 - sico