#SET{variable,value}
#GET{variable}
returns "value".
The variable defined by #SET
may be a character string or an array.
- A character string:#SET{my_string, article from #NOM}
#GET{my_string}
will display:
article from Jimmy
- An array [1]:#SET{my_array, #ARRAY{a,one,b,two,c,three,d,four}}
[(#GET{my_array}|foreach)]
will display:
- a => one
- b => two
- c => three
- d => four
Advanced uses with text strings
- A regular expression:
#SET{reg1, '(^.*/[^/]+[/])'}
#SET{reg2, '\.[\w-_]+?'}
<BOUCLE_def(DOCUMENTS){tout}>
[(#FICHIER|replace{#GET{reg2}}|replace{#GET{reg1}})]<hr />
</BOUCLE_def>
is designed to retrieve and display the file name of a document, enclosed by its access path and its extension.
For example, if #FICHIER
is IMG/pdf/Stats_Sejour_au_311207.pdf, we would be displaying Stats_Sejour_au_311207.
A key purpose in using the #SET
and #GET
tags for regular expressions is that it allows the usage of brackets ([ and ]) within the |replace
filter.
- The results returned by an INCLURE
:
[(#SET{my_return_value, #INCLURE{fond=calculations}})]
Default values
If variable
has not yet been defined with a #SET{variable, value}
beforehand, it is possible to specify a default value when using the corresponding #GET tag:#GET{variable, default_value}
will return "default_value" if "variable" has not been defined previously.
Warning: this method does not assign "default_value" to the "variable".
Scope of the variable defined with a par #SET
The values defined by the#SET
tag remain local to the template file in which they have been defined.
In addition, the value of a variable with a SET inside an included file can not be retrieved by the corresponding GET from within the file that includes the template file with that SET.