- Declarar una taula :
#SET{la_meva_taula, #ARRAY{clau1,valor1,clau2,valor2...}}- Recuperar el valor associat a una clau utilitzant el filtre |table_valeur :
[(#GET{la_meva_taule}|table_valeur{clau})]- Omplir una taula dinàmicament utilitzant el filtre |push :
#SET{paraules_escollides, #ARRAY{}}
<BOUCLE_themes(MOTS) {id_article}>
[(#SET{paraules_escollides, #GET{paraules_escollides}|push{#ID_MOT}})]
</BOUCLE_themes>o fins i tot forçant el valor de les claus amb la funció php utilitzada com a filtre |array_merge :
#SET{paraules_escollides, #ARRAY{}}
<BOUCLE_themes(MOTS) {id_article}>
[(#SET{paraules_escollides,
#GET{paraules_escollides}|array_merge{#ARRAY{
#COMPTEUR_BOUCLE, #ID_MOT
}}
})]
</BOUCLE_themes>Atenció 1 : el filtre |array_merge ne té en compte la clau a forçar (#COMPTEUR_BOUCLE a l’exemple que hi ha més avall) si aquesta clau és de tipus numèric. En aquest cas tenim dues solucions:
- o bé fixar prèviament aquesta clau amb un valor alfabètic :
#ARRAY{k#COMPTEUR_BOUCLE, #ID_MOT}; - o bé invertir clau i valor (amb la condició que el valor tampoc sigui numèric) i després aplicar la funció php com a filtre |array_flip a la taula final :
[(#SET{paraules_escollides, #GET{mots_choisis}|array_flip)]
Atenció 2 : és necessari declarar la taula abans d’omplir-la en el bucle.
Nota 1 : l’ordre d’emplenar una taula ve determinat per l’ordre d’aparició de les dades a dins del bucle; per tant, depèn del o dels criteris de classificació que són aplicats a aquests.
Nota 2 :[(#GET{la_meva_taula}|table_valeur{6})] mostrarà el valor associat a la clau número 6 de la taula; és a dir el 7è. valor: la numeració de les claus comença amb el zero.
- Utilitzar la taula a dins d’un bucle amb l’operador IN :
<BOUCLE_memes_themes(ARTICLES) {id_mot IN #GET{paraules_escollides}|sinon{0}}>
...- Visualització condicional en funció dels valors d’una taula :
[(#ENV{page}|in_array{#ARRAY{0,article,1,rubrique,2,site}}|oui)
Visualització condicional ]Un altre exemple amb una variable ’lolo’ passada a dins del Url :
http://le_site/-ma-rubrique-?lolo=6
[ Això es mostrarà si el valor de la variable 'lolo' passada a dins del Url es troba present a dins d'una taula 'les_mots' declarada i omplerta anteriorment
(#ENV{lolo}|in_array{#GET{les_mots}}|oui)
això es mostrarà també ]Per tal de no córrer el risc de generar un error « Warning : in_array() [function.in-array] : Wrong datatype for second argument. » en el cas que la variable passada no sigui del tipus array podrem utilitzar el filtre |in_any que repara l’error sense mostrar l’alerta, i permet visualitzar un valor alternatiu.
[(#VAL{abc}|in_any{#GET{tablo}, truc a fer si GET_tablo no és un array}|oui|?{truc a fer si abc és un valor de GET_tablo, truc a fer si abc no és un valor de GET_tablo})]