Filtri za latte

Filtri so funkcije, ki spremenijo ali oblikujejo podatke v želeno obliko. To je povzetek vgrajenih filtrov, ki so na voljo.

Preoblikovanje nizov / polj
batch izpis linearnih podatkov v tabeli
breakLines Vstavi prelome vrstic HTML pred vse nove vrstice
bytes oblikuje velikost v bajtih
clamp vpne vrednost v območje
dataStream Pretvorba protokola URI podatkov
date oblikovanje datuma in časa
explode razdeli niz z danim ločilom
first vrne prvi element polja ali znak niza
group združevanje podatkov po različnih merilih
implode združi polje z nizom
indent besedilo z leve strani odriva s številom tabulatorjev
join združi polje z nizom
last vrne zadnji element polja ali znak niza
length vrne dolžino niza ali polja
localDate oblikovanje datuma in časa v skladu z lokalnim jezikom
number oblikovanje števila
padLeft dopolni niz do dane dolžine z leve
padRight dopolni niz do dane dolžine od desne
random vrne naključni element polja ali znak niza
repeat ponovi niz
replace nadomesti vse pojavitve iskanega niza z zamenjavo
replaceRE nadomesti vse pojavitve v skladu z regularnim izrazom
reverse obrne niz ali polje UTF-8
slice izvleče rezino polja ali niza
sort razvrsti polje
spaceless odstrani bele presledke, podobno kot pri oznaki brez presledkov
split razdeli niz z danim ločilom
strip odstrani bele prostore
stripHtml odstrani oznake HTML in pretvori entitete HTML v besedilo
substr vrne del niza
trim odstrani bele prostore iz niza
translate prevajanje v druge jezike
truncate skrajša dolžino, pri čemer ohrani cele besede
webalize prilagodi niz UTF-8 obliki, ki se uporablja v naslovu URL
Oblikovanje črk
capitalize male črke, prva črka vsake besede velika črka
firstUpper prva črka je velika
lower niz postane mala črka
upper spremeni niz v velike črke
Zaokroževanje številk
ceil zaokroži število do določene natančnosti
floor zaokroži število navzdol na določeno natančnost
round zaokroži število na določeno natančnost
Escaping
escapeUrl pobegne parameter v naslovu URL
noescape natisne spremenljivko brez umika
query ustvari poizvedbeni niz v naslovu URL

Na voljo so tudi filtri za eskapiranje za HTML (escapeHtml in escapeHtmlComment), XML (escapeXml), JavaScript (escapeJs), CSS (escapeCss) in iCalendar (escapeICal), ki jih Latte uporablja sam zaradi kontekstnega eskapiranja in vam jih ni treba pisati.

Varnost
checkUrl odpravi niz za uporabo znotraj atributa href
nocheck preprečuje samodejno čiščenje URL

Latte atributa src in href preverja samodejno, zato vam skoraj ni treba uporabljati filtra checkUrl.

Vsi vgrajeni filtri delujejo z nizi, kodiranimi v UTF-8.

Uporaba

Latte omogoča klicanje filtrov z uporabo zapisa z znakom pipe (pred njim je dovoljen presledek):

<h1>{$heading|upper}</h1>

Filtri se lahko verižijo, v tem primeru se uporabljajo po vrstnem redu od leve proti desni:

<h1>{$heading|lower|capitalize}</h1>

Parametri so navedeni za imenom filtra, ločeni z dvopičjem ali vejico:

<h1>{$heading|truncate:20,''}</h1>

Filtre je mogoče uporabiti na izrazu:

{var $name = ($title|upper) . ($subtitle|lower)}</h1>

Filtre po meri je mogoče registrirati na ta način:

$latte = new Latte\Engine;
$latte->addFilter('shortify', fn(string $s, int $len = 10) => mb_substr($s, 0, $len));

Uporabimo ga v predlogi, kot je ta:

<p>{$text|shortify}</p>
<p>{$text|shortify:100}</p>

Filtri

batch (int $length, mixed $item)array

Filter, ki poenostavi navajanje linearnih podatkov v obliki tabele. Vrne polje z danim številom elementov. Če navedete drugi parameter, se ta uporabi za dopolnitev manjkajočih elementov v zadnji vrstici.

{var $items = ['a', 'b', 'c', 'd', 'e']}
<table>
{foreach ($items|batch: 3, 'No item') as $row}
	<tr>
		{foreach $row as $column}
			<td>{$column}</td>
		{/foreach}
	</tr>
{/foreach}
</table>

Izpisuje:

<table>
	<tr>
		<td>a</td>
		<td>b</td>
		<td>c</td>
	</tr>
	<tr>
		<td>d</td>
		<td>e</td>
		<td>No item</td>
	</tr>
</table>

Oglejte si tudi oznako group in iterateWhile.

breakLines

Pred vse nove vrstice vstavi prelome vrstic HTML.

{var $s = "Text & with \n newline"}
{$s|breakLines}    {* outputs "Text & with <br>\n newline" *}

bytes (int $precision=2)

Oblikuje velikost v bajtih v človeku razumljivo obliko. Če je nastavljen lokalni jezik, se uporabijo ustrezna decimalna ločila in ločila v tisočih.

{$size|bytes}     0 B, 1.25 GB, …
{$size|bytes:0}   10 B, 1 GB, …

ceil (int $precision=0)

Zaokroži število do določene natančnosti.

{=3.4|ceil}         {* izhodi 4 *}
{=135.22|ceil:1}    {* izhodi 135.3 *}
{=135.22|ceil:3}    {* izhodi 135.22 *}

Glej tudi floor, round.

capitalize

Vrne različico vrednosti, ki je označena z naslovi. Besede se začnejo z velikimi črkami, vsi preostali znaki so mali. Zahteva razširitev PHP mbstring.

{='i like LATTE'|capitalize}  {* outputs 'I Like Latte' *}

Glej tudi firstUpper, lower, upper.

checkUrl

Uveljavlja čiščenje URL-jev. Preveri, ali spremenljivka vsebuje spletni naslov URL (tj. protokol HTTP/HTTPS), in prepreči zapis povezav, ki bi lahko predstavljale varnostno tveganje.

{var $link = 'javascript:window.close()'}
<a data-href={$link|checkUrl}>checked</a>
<a data-href={$link}>unchecked</a>

Izpisuje:

<a data-href="">checked</a>
<a data-href="javascript:window.close()">unchecked</a>

Glej tudi nocheck.

clamp (int|float $min, int|float $max)

Vrne vrednost, ki je omejena na vključujoče območje min in max.

{$level|clamp: 0, 255}

Obstaja tudi kot funkcija.

dataStream (string $mimetype=detect)

Pretvori vsebino v podatkovno shemo URI. Uporablja se lahko za vstavljanje slik v HTML ali CSS, ne da bi bilo treba povezovati zunanje datoteke.

Imejmo sliko v spremenljivki $img = Image::fromFile('obrazek.gif'), potem

<img src={$img|dataStream}>

natisne na primer:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA
AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO
9TXL0Y4OHwAAAABJRU5ErkJggg==">

Zahteva razširitev PHP fileinfo.

date (string $format)

Oblikuje datum in čas v skladu z masko, ki jo uporablja funkcija PHP date. Filter sprejme datum v obliki časovnega žiga UNIX, kot niz ali kot objekt DateTimeInterface.

{$today|date:'j. n. Y'}

Glej tudi localDate.

escapeUrl

Izbriše spremenljivko, ki se uporabi kot parameter v naslovu URL.

<a href="http://example.com/{$name|escapeUrl}">{$name}</a>

Glej tudi poizvedbo.

explode (string $separator='')

Razdeli niz z danim ločilom in vrne polje nizov. Vzdevek za split.

{='one,two,three'|explode:','}    {* returns ['one', 'two', 'three'] *}

Če je ločilo prazen niz (privzeta vrednost), se vhodni niz razdeli na posamezne znake:

{='123'|explode}                  {* vrne ['1', '2', '3'] *}

Uporabite lahko tudi vzdevek split:

{='1,2,3'|split:','}              {* vrne ['1', '2', '3'] *}

Glej tudi implode.

first

Vrne prvi element polja ali znak niza:

{=[1, 2, 3, 4]|first}    {* izhodi 1 *}
{='abcd'|first}          {* izhodi 'a' *}

Glej tudi last, random.

floor (int $precision=0)

Zaokroži število do določene natančnosti.

{=3.5|floor}        {* izhodi 3 *}
{=135.79|floor:1}   {* izhodi 135.7 *}
{=135.79|floor:3}   {* izhodi 135.79 *}

Glejte tudi strop, zaokrožitev.

firstUpper

Prvo črko vrednosti pretvori v veliko črko. Zahteva razširitev PHP mbstring.

{='the latte'|firstUpper}  {* outputs 'The latte' *}

Oglejte si tudi velika začetnica, mala začetnica, velika začetnica.

group (string|int|\Closure $by)array

Filter razvrsti podatke v skupine glede na različna merila.

V tem primeru so vrstice v tabeli razvrščene po stolpcu categoryId. Rezultat je polje polj, kjer je ključ vrednost v stolpcu categoryId. Preberite podrobna navodila.

{foreach ($items|group: categoryId) as $categoryId => $categoryItems}
    <ul>
        {foreach $categoryItems as $item}
            <li>{$item->name}</li>
        {/foreach}
    </ul>
{/foreach}

Oglejte si tudi paket, funkcijo group in oznako iterateWhile.

implode (string $glue='')

Vrne niz, ki je sestavljen iz nizov v polju. Vzdevek za join.

{=[1, 2, 3]|implode}      {* izhodi '123' *}
{=[1, 2, 3]|implode:'|'}  {* izhodi '1|2|3' *}

Uporabite lahko tudi vzdevek join:

{=[1, 2, 3]|join}         {* izhodi '123' *}

indent (int $level=1, string $char="\t")

Odmakne besedilo od leve strani za določeno število tabulatorjev ali drugih znakov, ki jih določimo v drugem neobveznem argumentu. Prazne vrstice se ne odrivajo.

<div>
{block |indent}
<p>Hello</p>
{/block}
</div>

Natisne:

<div>
	<p>Hello</p>
</div>

last

Vrne zadnji element polja ali znak niza:

{=[1, 2, 3, 4]|last}    {* izhodi 4 *}
{='abcd'|last}          {* izhodi 'd' *}

Glej tudi first, random.

length

Vrne dolžino niza ali polja.

  • za nize vrne dolžino v znakih UTF-8
  • za polja vrne število elementov
  • za predmete, ki implementirajo vmesnik Countable, bo uporabil povratno vrednost funkcije count()
  • za predmete, ki implementirajo vmesnik IteratorAggregate, uporabi povratno vrednost iterator_count()
{if ($users|length) > 10}
	...
{/if}

localDate (?string $format=null, ?string $date=null, ?string $time=null)

Oblikuje datum in čas glede na lokalno okolje, kar zagotavlja dosleden in lokaliziran prikaz časovnih podatkov v različnih jezikih in regijah. Filter sprejme datum kot časovni žig UNIX, niz ali objekt DateTimeInterface.

{$date|localDate}                  {* 15. dubna 2024 *}
{$date|format: yM}                 {* 4/2024 *}
{$date|localDate: date: medium}    {* 15. 4. 2024 *}

Če filter uporabite brez parametrov, bo izpisal datum v dolgem formatu, kot je pojasnjeno v nadaljevanju.

a) Uporaba oblike

Parameter format opisuje, katere časovne komponente je treba prikazati. Uporablja črkovne kode, pri čemer število ponovitev vpliva na širino izpisa:

Leto y / yy / yyyy 2024 / 24 / 2024
Mesec M / MM / MMMMMMM 8 / 08 / avg.avgust
Dan d / dd / EEEEE 1 / 01 / ned.nedelja
Ura j / H / h prednostno / 24-urno / 12-urno
Minuta m / mm 5 / 05 (2 števki v kombinaciji s sekundami)
Sekunda s / ss 8 / 08 (2 števki v kombinaciji z minutami)

Vrstni red kod v formatu ni pomemben, saj bo vrstni red komponent prikazan v skladu s konvencijami lokalnega okolja. Zato je oblika neodvisna od krajevnega okolja. Na primer, format yyyyMMMMd v lokalnem okolju en_US prikaže April 15, 2024, medtem ko v lokalnem okolju cs_CZ prikaže 15. dubna 2024:

locale: sl-SI en_US
format: 'dMy' 10. 8. 2024 8/10/2024
format: 'yM' 8/2024 8/2024
format: 'yyyyMMMM' avgust 2024 August 2024
format: 'MMMM' avgust August
format: 'jm' 17:54 5:54 PM
format: 'Hm' 17:54 17:54
format: 'hm' 5:54 pop. 5:54 PM

b) Uporaba prednastavljenih slogov

Parametra date in time določata stopnjo podrobnosti prikaza datuma in časa. Izbirate lahko med več ravnmi: full, long, medium, short. Prikažete lahko samo datum, samo čas ali oboje:

locale: sl-SI en_US
date: short 23. 01. 78 1/23/78
date: medium 23. jan. 1978 Jan 23, 1978
date: long 23. januar 1978 January 23, 1978
date: full ponedeljek, 23. januar 1978 Monday, January 23, 1978
time: short 08:30 8:30 AM
time: medium 08:30:59 8:30:59 AM
time: long 08:30:59 GMT+1 8:30:59 AM GMT+1
date: short, time: short 23. 01. 78, 08:30 1/23/78, 8:30 AM
date: medium, time: short 23. jan. 1978, 08:30 Jan 23, 1978, 8:30 AM
date: long, time: short 23. januar 1978 ob 08:30 January 23, 1978 at 8:30 AM

Za datum lahko uporabite tudi predpono relative- (npr. relative-short), ki za datume blizu sedanjosti prikaže yesterday, today ali tomorrow; sicer se prikaže na standardni način.

{$date|localDate: date: relative-short}    {* yesterday *}

Glejte tudi datum.

lower

Pretvori vrednost v male črke. Zahteva razširitev PHP mbstring.

{='LATTE'|lower}   {* izhodi 'latte' *}

Glej tudi capitalize, firstUpper, upper.

nocheck

Preprečuje samodejno prečiščevanje URL. Latte samodejno preveri, ali spremenljivka vsebuje spletni naslov URL (tj. protokol HTTP/HTTPS), in prepreči zapis povezav, ki bi lahko predstavljale varnostno tveganje.

Če povezava uporablja drugo shemo, na primer javascript: ali data:, in ste prepričani o njeni vsebini, lahko preverjanje onemogočite prek |nocheck.

{var $link = 'javascript:window.close()'}

<a href={$link}>checked</a>
<a href={$link|nocheck}>unchecked</a>

Izpisi:

<a href="">checked</a>
<a href="javascript:window.close()">unchecked</a>

Glej tudi checkUrl.

noescape

Onemogoči samodejno izrivanje.

{var $trustedHtmlString = '<b>hello</b>'}
Escaped: {$trustedHtmlString}
Unescaped: {$trustedHtmlString|noescape}

Natisne:

Escaped: &lt;b&gt;hello&lt;/b&gt;
Unescaped: <b>hello</b>

Zloraba filtra noescape lahko privede do ranljivosti XSS! Nikoli ga ne uporabljajte, razen če ste trdno prepričani, kaj počnete in da niz, ki ga tiskate, prihaja iz zaupanja vrednega vira.

number (int $decimals=0, string $decPoint='.', string $thousandsSep=',')

Oblikuje število na določeno število decimalnih mest. Če je nastavljen lokalni jezik, se uporabijo ustrezna ločila za decimalke in tisočinke.

{1234.20 |number}              1,234
{1234.20 |number:1}            1,234.2
{1234.20 |number:2}            1,234.20
{1234.20 |number:2, ',', ' '}  1 234,20

number (string $format)

S parametrom format lahko videz številk določite točno po svojih potrebah. Zahteva nastavljeno lokalno okolje. Oblika je sestavljena iz več posebnih znakov, katerih popoln opis je na voljo v dokumentaciji “DecimalFormat”::https://unicode.org/…numbers.html#…

  • <c id=6/> obvezna številka, ki je vedno prikazana, tudi če je enaka nič
  • # neobvezna števka, prikazana samo, če ima število na tem mestu števko
  • @ pomembna števka, pomaga prikazati število z določenim številom pomembnih števk
  • . označuje, kje mora biti decimalno ločilo (vejica ali pika, odvisno od lokalnega okolja)
  • , se uporablja za ločevanje skupin številk, običajno tisočic
  • % pomnoži število s 100 in doda znak odstotka

Oglejmo si nekaj primerov. V prvem primeru sta dve decimalki obvezni, v drugem pa neobvezni. Tretji primer prikazuje polnilo z ničlami na obeh straneh, četrti pa prikazuje samo obstoječe števke:

{1234.5|number: '#,##0.00'}     {* 1,234.50 *}
{1234.5|number: '#,##0.##'}     {* 1,234.5 *}
{1.23  |number: '000.000'}      {* 001.230 *}
{1.2   |number: '##.##'}        {* 1.2 *}

Pomembne števke določajo, koliko števk, ne glede na decimalno vejico, naj se prikaže, pri čemer se število po potrebi zaokroži:

{1234|number: '@@'}             {* 1200 *}
{1234|number: '@@@'}            {* 1230 *}
{1234|number: '@@@#'}           {* 1234 *}
{1.2345|number: '@@@'}          {* 1.23 *}
{0.00123|number: '@@'}          {* 0.0012 *}

Enostaven način za prikaz števila v odstotkih. Število pomnožimo s 100 in dodamo znak %:

{0.1234|number: '#.##%'}        {* 12.34% *}

Za pozitivna in negativna števila, ločena z znakom ;, lahko določimo drugačno obliko. Tako lahko na primer pozitivna števila prikažemo z znakom +:

{42|number: '#.##;(#.##)'}      {* 42 *}
{-42|number: '#.##;(#.##)'}     {* (42) *}
{42|number: '+#.##;-#.##'}      {* +42 *}
{-42|number: '+#.##;-#.##'}     {* -42 *}

Ne pozabite, da se dejanski videz številk lahko razlikuje glede na nastavitve lokalnega okolja. V nekaterih državah se na primer namesto pike kot decimalno ločilo uporablja vejica. Ta filter to samodejno upošteva, zato vam ni treba skrbeti za to.

padLeft (int $length, string $pad=' ')

Podaljša niz do določene dolžine z drugim nizom z leve.

{='hello'|padLeft: 10, '123'}  {* izhodi '12312hello' *}

padRight (int $length, string $pad=' ')

Podloži niz na določeno dolžino z drugim nizom z desne.

{='hello'|padRight: 10, '123'}  {* izpisi 'hello12312' *}

query

Dinamično ustvari poizvedbeni niz v naslovu URL:

<a href="http://example.com/?{[name: 'John Doe', age: 43]|query}">click</a>
<a href="http://example.com/?search={$search|query}">search</a>

Natisne:

<a href="http://example.com/?name=John+Doe&amp;age=43">click</a>
<a href="http://example.com/?search=Foo+Bar">search</a>

Ključi z vrednostjo null so izpuščeni.

Glej tudi escapeUrl.

random

Vrne naključni element polja ali znak niza:

{=[1, 2, 3, 4]|random}    {* izhodni primer: 3 *}
{='abcd'|random}          {* izhodni primer: 'b' *}

Glej tudi first, last.

repeat (int $count)

Ponovi niz x-krat.

{='hello'|repeat: 3}  {* izhodi 'hellohellohello' *}

replace (string|array $search, string $replace='')

Zamenja vse pojavitve iskanega niza z nadomestnim nizom.

{='hello world'|replace: 'world', 'friend'}  {* outputs 'hello friend' *}

Izvede se lahko več zamenjav naenkrat:

{='hello world'|replace: [h => l, l => h]}  {* izhodi 'lehho worhd' *}

replaceRE (string $pattern, string $replace='')

Zamenja vse pojavitve v skladu z regularnim izrazom.

{='hello world'|replaceRE: '/l.*/', 'l'}  {* izhodi 'hel' *}

reverse

Obrne dani niz ali polje.

{var $s = 'Nette'}
{$s|reverse}    {* izhodi 'etteN' *}
{var $a = ['N', 'e', 't', 't', 'e']}
{$a|reverse}    {* vrne ['e', 't', 't', 'e', 'N'] *}

round (int $precision=0)

Zaokroži število na določeno natančnost.

{=3.4|round}        {* izhodi 3 *}
{=3.5|round}        {* izhodi 4 *}
{=135.79|round:1}   {* izhodi 135.8 *}
{=135.79|round:3}   {* izhodi 135.79 *}

Glej tudi strop, dno.

slice (int $start, ?int $length=null, bool $preserveKeys=false)

Izvleče rezino polja ali niza.

{='hello'|slice: 1, 2}           {* izhodi 'el' *}
{=['a', 'b', 'c']|slice: 1, 2}   {* izhodi ['b', 'c'] *}

Filter rezine deluje kot funkcija PHP array_slice za polja in mb_substr za nize s povratno funkcijo iconv_substr v načinu UTF-8.

Če je začetek nenegativen, se zaporedje v spremenljivki začne s tem začetkom. Če je start negativen, se zaporedje začne tako daleč od konca spremenljivke.

Če je podana dolžina in je pozitivna, bo imelo zaporedje do toliko elementov. Če je spremenljivka krajša od dolžine, bodo prisotni samo razpoložljivi elementi spremenljivke. Če je podana dolžina in je negativna, se bo zaporedje ustavilo toliko elementov od konca spremenljivke. Če je dolžina izpuščena, bo zaporedje vsebovalo vse od odmika do konca spremenljivke.

Filter bo privzeto spremenil vrstni red in ponastavil ključe celoštevilskega polja. To obnašanje lahko spremenite z nastavitvijo vrednosti preserveKeys na true. Vrstični ključi se vedno ohranijo, ne glede na ta parameter.

sort (?Closure $comparison, string|int|\Closure|null $by=null, string|int|\Closure|bool $byKey=false)

Filter razvrsti elemente polja ali iteratorja, pri čemer ohrani njihove asociativne ključe. Ko je nastavljen lokalni jezik, razvrščanje sledi njegovim pravilom, razen če je določena primerjalna funkcija po meri.

{foreach ($names|sort) as $name}
	...
{/foreach}

Polje je razvrščeno v obratnem vrstnem redu.

{foreach ($names|sort|reverse) as $name}
	...
{/foreach}

Za razvrščanje lahko določite primerjalno funkcijo po meri (primer prikazuje, kako obrniti razvrščanje od največjega do najmanjšega):

{var $reverted = ($names|sort: fn($a, $b) => $b <=> $a)}

Filter |sort omogoča tudi razvrščanje elementov po ključu:

{foreach ($names|sort: byKey: true) as $name}
	...
{/foreach}

Če želite tabelo razvrstiti po določenem stolpcu, lahko uporabite parameter by. Vrednost 'name' v primeru določa, da se razvrščanje opravi po $row->name ali $row['name'], odvisno od tega, ali je $row polje ali objekt:

{foreach ($items|sort: by: 'name') as $item}
	{$item->name}
{/foreach}

Določite lahko tudi funkcijo povratnega klica, ki določi vrednost, po kateri se bo razvrščalo:

{foreach ($items|sort: by: fn($items) => $items->category->name) as $item}
	{$item->name}
{/foreach}

Na enak način lahko uporabite tudi parameter byKey.

spaceless

Odstrani nepotrebne bele lise iz izpisa. Uporabite lahko tudi vzdevek strip.

{block |spaceless}
	<ul>
		<li>Hello</li>
	</ul>
{/block}

Natisne:

<ul> <li>Hello</li> </ul>

stripHtml

Pretvarja HTML v navadno besedilo. To pomeni, da odstrani oznake HTML in pretvori entitete HTML v besedilo.

{='<p>one &lt; two</p>'|stripHtml}  {* outputs 'one < two' *}

Dobljeno navadno besedilo lahko seveda vsebuje znake, ki predstavljajo oznake HTML, na primer '&lt;p&gt;'|stripHtml se pretvori v <p>. Dobljenega besedila nikoli ne izpišite s |noescape, saj to lahko povzroči varnostno ranljivost.

substr (int $offset, ?int $length=null)

Izvleče rezino niza. Ta filter je bil nadomeščen s filtrom za rezine.

{$string|substr: 1, 2}

translate (string $message, …$args)

Prevaja izraze v druge jezike. Če želite, da je filter na voljo, morate nastaviti prevajalnik. Za prevajanje lahko uporabite tudi oznake.

<a href="basket">{='Baskter'|translate}</a>
<span>{$item|translate}</span>

trim (string $charlist=" \t\n\r\0\x0B\u{A0}")

Odstrani vodilne in končne znake, privzeto beli prostor.

{='  I like Latte.  '|trim}    {* outputs 'I like Latte.' *}
{='  I like Latte.'|trim: '.'} {* outputs '  I like Latte' *}

truncate (int $length, string $append='…')

Skrajša niz na največjo dovoljeno dolžino, vendar poskuša ohraniti cele besede. Če je niz skrajšan, na koncu doda elipso (to lahko spremenite z drugim parametrom).

{var $title = 'Hello, how are you?'}
{$title|truncate:5}  {* Hell…                *}
{$title|truncate:17} {* Hello, how are…      *}
{$title|truncate:30} {* Hello, how are you?  *}

upper

Pretvori vrednost v velike črke. Zahteva razširitev PHP mbstring.

{='latte'|upper}  {* izhodi 'LATTE' *}

Glej tudi capitalize, firstUpper, lower.

webalize

Pretvarja v ASCII.

Prevede presledke v pomišljaje. Odstrani znake, ki niso alfanumerični znaki, podčrtaji ali pomišljaji. Pretvarja v male črke. Odstrani tudi začetni in končni beli presledek.

{var $s = 'Our 10. product'}
{$s|webalize}    {* izhodi 'our-10-product' *}

Zahteva paket nette/utils.

različica: 3.0