Overzicht modifiers
Je kunt de variabelen, waarmee je e-mails personaliseert, veranderen met behulp
van modifiers. Je doet dit door een |
toe te voegen na de variabele.
Je gebruikt bijvoorbeeld tolower
om de variabele {$name}
te
bewerken. Dit ziet er dan zo uit: {$name|tolower}
.
Tot slot, je kunt ook een aantal 'modifiers' achter elkaar gebruiken.
Je kunt bijvoorbeeld {$name|tolower|ucfirst}
gebruiken om te zorgen dat alle
namen met een hoofdletter beginnen en de resterende letters altijd kleine
letters zijn.
De volgende tabel laat alle geldige modifiers zien:
Modifier | Beschrijving |
---|---|
base64_encode | base64 encoder |
base64_decode | base64 decoder |
cat:"string" | maakt van de variabele een string |
count | telt het aantal elementen in een variable |
count_characters | telt het aantal tekens in een string |
count_paragraphs | telt het aantal paragrafen in een tekst (door newlines te tellen) |
count_words | telt het aantal woorden in een tekst |
default:default value | gebruik default waarde als variabele niet is aangegeven |
empty | check of een variabele leeg is |
escape:"string" | escape html tekens (of andere tekens) binnen een string |
indent:num = 1:char = " " | zet het aantal whitespaces aan het begin van elke regel |
md5 | voer md5 hashing uit |
nl2br | vervang newlines met html br tags |
range:start = 0:end | lijst opdelen om de items tussen de start en eindpositie te krijgen |
regex_replace:regex:replace_text | vervang substrings door regular expressions te gebruiken |
replace:"string1":"string2" | vervang het voorkomen van string1 met string2 |
sha1 | voer sha1 hashing uit |
sha256 | niet beschikbaar; hash met {hash($text, 'sha256')} |
sha512 | niet beschikbaar; hash met {hash($text, 'sha512')} |
spacify:separator = " " | plaats een verdeler tussen elk input teken |
strlen | tel het aantal tekens in een string |
strstr:"substring":before = false | geef de string terug, startend van de eerste eerste verschrijning van substring als before = false. Geef anders de string terug tot aan de eerste verschijning. |
substr:start position:length | geef de substring teurg vanafsw startpositie. Optioneel opgedeeld na een bepaalde lengte aan karakters |
tolower | zet alle tekens om naar kleine letters |
toupper | zet alle tekens om naar grote letters |
trim | trim de spaties en endline tekens aan beide kunten van het inputveld |
truncate:length = 80:etc = "...":break_words = false | deel de inputvelden op die niet langer dan lengte en toevoegen zijn aan het eind. break_words = true staat het opdelen van delen van woorden toe. |
ucfirst | vervang eerste teken met een hoofdletter |
urlencode | codeer input om te gebruiken in een url |
urldecode | decodeer input om te gebruiken in een url |
base64_encode
Met deze modifier codeer je data naar base64. Dit werkt niet op arrays. Gebruik:
The base64 encoding of {$name} is {$name|base64_encode}
base64_decode
Met deze modifier kun je base64 decoderen. Gebruik:
The decoded information is {$base64encoded|base64_decode}
cat
Met deze modifier kun je een string samenvoegen met je variabele. Als de variabele een array is, wordt de string gebruikt. Gebruik:
{$name|cat:"string"}
count
Met deze modifier kun je het aantal elementen tellen in een array. Er wordt een 0 teruggegeven als de variabele geen array is. Gebruik:
{$names|count}
count_characters
Met deze modifier kun je het aantal tekens in een tekst tellen. Er wordt in dit geval een 0 teruggegeven als de variabele waarop deze modifier wordt aangeroepen een array bevat. Gebruik:
{$name|count_characters}
count_paragraphs
Met deze modifier kun je het aantal paragrafen tellen in een tekst. Er wordt een 0 teruggegeven als de modifier wordt aangeroepen op een array. Gebruik:
The following text has {$text|count_paragraphs} paragraph
Text:
{$text}
count_words
Met deze modifier kun je het aantal woorden tellen in een stuk tekst. Hier wordt een 0 teruggegeven als de 'modifier' wordt aangeroepen op een array. Gebruik:
"{$text}" has {$text|count_words} words
default
Met deze modifier kun je de default waarde aanroepen die wordt gebruikt bij het ontbreken van een bepaalde waarde. Gebruik:
This will always show {$name|default:"something"}
empty
Deze modifier is niet meer beschikbaar. Je kunt checken of een variabele een waarde bevat door deze om te zetten in een boolean, zoals te zien is in het onderstaande voorbeeld. Gebruik:
{if $name|empty}
Beste klant,
{else}
Beste {$name},
{/if}
escape
Met deze modifier kun je escape aanroepen op een variabele. Deze modifier werkt niet op een arrray. Gebruik:
{$text|escape:"html"}
is gelijk aan:
{$text|escape}
indent
Met deze modifier kun je indentatie toevoegen aan je tekst. Je kunt zelfs specificere hoeveel indentatie er nodig is en welke tekens indentatie moeten ontvangen. De syntax is indent:num:char en de default is 1 en spacing respectievelijk. De modifier wordt genegereerd bij gebruik op een array. Gebruik:
{$text|indent:4:" "}
md5
Met deze modifier kun je de MD5 checksum van je tekst calculeren. Bij gebruik van een array, wordt de hele array gecalculeerd. Gebruik:
{$text|md5}
nl2br
Met deze modifier vervang je newlines met HTML br tags. Dit stelt je in staat om gewone tekst te schrijven dat op wordt gedeeld in HTML modus. Dit werkt bij gebruik van een array. Gebruik:
{$text|nl2br}
range
Met deze modifier kun je een array als het ware opknippen door zelf de grenzen aan te geven waartussen de range moet vallen. Deze modifier werkt niet als de variabele geen array is. Gebruik:
{$array|range:2:5}
regex_replace
Met deze modifier kun je delen van je tekst vervangen met andere tekst, gebasseerd op regular expressions. Dit werkt niet als de variabele een array is. Gebruik:
This will replace each number in the variable string with the string "a number"
{$text|regex_replace:"\d":" a number "}
replace
Met deze modifier kun je een deel van de tekst vervangen met andere tekst. De syntax is als volgt: replace:"string1":"string2". Dit zorgt ervoor dat overal waar "string1" voorkomt, deze wordt vervangen door "string2". Dit werkt niet als de variabele een array is. Gebruik:
{$text|replace:"hi":"hello"}
sha1
Met deze modifier krijg je de SHA1 hash van de text terug. Een array wordt in z'n geheel gecalculeerd, behalve de keys. Gebruik:
{$text|sha1}
sha256
De modifier voor de SHA256 hash van een tekst is niet beschikbaar meer. Je kunt echter deze nog wel berekenen met de hash functie, zoals getoond in het onderstaande voorbeeld. Een array wordt volledig berekend, behalve de keys. Gebruik:
{hash($text, 'sha256')}
sha512
De modifier voor de SHA512 hash van een tekst is niet beschikbaar meer. Je kunt echter deze nog wel berekenen met de hash functie, zoals getoond in het onderstaande voorbeeld. Een array wordt volledig berekend, behalve de keys. Gebruik:
{hash($text, 'sha512')}
spacify
Met deze modifier kun je een teken of tekens toevoegen tussen elk teken in je variabele. De syntax is als volgt: spacify:separator, waar de default scheiding een spatie is. Dit werkt niet als de variabele een array is. Gebruik:
{$text|spacify:"."}
strlen
Met deze modifier kun de lengte van de variabele worden achterhaald. Bij toepassing op een array, wordt de waarde 0 teruggegeven. Gebruik:
{$text|strlen}
strstr
Met deze modifer kun je naar een string zoeken in de variabele en het punt aangeven van waar je de rest van de variabele terug wilt hebben. Dit kun het gedeelte voor de string zijn, maar ook het gedeelte vanaf de gevonden string. Deze modifier werkt niet op een array. Gebruik:
If the variable holds "Hello world!", this will print Hello, {$variable|strstr:" ":true}
and this will print world!, {$variable|strstr:"w":false}, just like this
{$variable|strstr:"w"}
substr
Met deze modifier kun je een substring van een variabele opvragen. De syntax is als volgt: substr:start:length. Start is de beginpositie (zero indexed) en de length is de lengte die je wilt opvragen. Gebruik:
If the variable is "0123456789" this will print 2 to 9
{$variable|substr:2}
and this will print 456
{$variable|substr:4:3}
lower
Met deze modifier kun je alle tekens naar kleine letters omzetten. Gebruik:
{$text|lower}
upper
Met deze modifier kun je alle tekens naar hoofdletters omzetten. Gebruik:
{$text|upper}
trim
Met deze modifier kun je ongewenste spaties en new line characters in je tekst trimmen. Een overzicht van tekens die worden getrimd: spaties, tabs, newlines, regelterugloop, verticale tabs en einde van strings. Gebruik:
{$text|trim}
truncate
Met deze modifier is het mogelijk om tekst af te knippen en tot een bepaalde lengte terug te brengen. Je kunt wat tekens toevoegen om aan te geven dat de tekst is afgeknipt. Deze worden bij de lengte van het afknippen opgeteld. Je kunt ook opgeven of het toegestaan is om worden af te breken of niet. De syntax is als volgt: truncate:length:etc:break_words. De lengte heeft een default van 80, etc (de vervanging) heeft een default van ... en break_words heeft een default van false. Gebruik:
{$text|truncate:50:"....":true}
ucfirst
Met deze modifer kun je het eerste teken van de tekst vervangen met een hoofdletter teken. Gebruik:
{$name|ucfirst}
urlencode
Met deze modifier kun je tekst url encoden. Gebruik:
{$text|urlencode}
urldecode
Met deze modifier kun je tekst url decoden. Gebruik:
{$text|urldecode}