Smarty Template Engine 6.díl - Speciální proměnné

« zpět na PHP a HTML

obrazky/smarty.gif

Smarty Template Engine 6.díl - Proměnné III.


Stejně jako PHP, tak i Smarty Template Engine obsahuje speciální proměnné a také zde můžeme tvořit proměnné vlastní. Tato část bude tedy zaměřená spíše na programátory.



Speciální proměnné


Pomocí speciálních proměnných můžeme přistupovat k datům předávaným metodami POST, GET, k hodnotám uloženým v COOKIES, či SESSION. V případě, že nějaké takové máme definované, můžeme je vypsat, či s nimi přímo v .tpl souborech pracovat zcela jednoduchým způsobem.


  • $smarty.get.nazev - pro hodnotu "nazev" předanou metodou GET

  • $smarty.post.nazev - pro hodnotu "nazev" předanou metodou POST

  • $smarty.cookies.nazev - pro hodnotu "nazev" definovanou jako COOKIES

  • $smarty.post.session - pro hodnotu "nazev" definovanou jako SESSION



Speciální proměnné
Stejně jako v PHP můžeme i ve Smarty použít některé speciální proměnné. Pro příklad vypíšu ty, jež by se mohli doopravdy hodit. Ve všech příkladech jde o ekvivalenty php funkcí a proto je u některých potřeba použit modifikátory (o kterých budemem mluvit až příště) pro srozumitelné zobrazení.

$smarty.now - vrací čas ve vteřinách od 1. 1. 1970.
$smarty.template - aktuálně používaná šablona
$smarty.section, $smarty.foreach - slouží pro přístup k hodnotám cyklických funkcí ve Smarty. Popíšeme si v příštích dílech

Definování vlastní proměnné


V některých případech (složítejší výpisy dat z DB, výpočty pro ajax aj.) je potřeba definovat přímo v .tpl souboru vlastní proměnnou a dále s ní pracovat. Smarty tuto možnost má, i když práce s takovou proměnnou je poněkud kostrbatá.

Definování proměnné

{assign var=nazev value='hodnota'} /* deklarace */
{$nazev} /* vypis */



Pokud by jsme do proměnné "nazev" uložili číslo jedna a chtěli ho např. při každém kroku cyklu iterovat, postup by byl následující

{assign var=nazev value=1}
{foreach from=$var item=out}
{assign var=nazev value=$nazev+1}
{$nazev} - {$out}
{/foreach}


Další možnosti předávání proměnných


Možností jak předávat proměnné je více, než několik základních, jež jsme si ukázali ve 4. dílu. Ty jsou samozřejmě omezeny možnostmi php, s některými se ale určitě při své práci se Smarty setkáte, proto uvedu ty nejpoužívanější.
Celý seznam naleznete na oficiálních stránkách projektu Smarty

{$item.$promenna} - odkázání na konkrétní index pole pomocí proměnné
{$item->metoda()} - vrátí hodnotu metody
{#foo#} - zobrazí konfigurační == {$smarty.config.foo}
{$foo[4].baz} - odkázání na konkrétní atribut položky indexované jako "4"


Nezávazně vyzkoušejte webové stránky zdarma

Klientská sekce pro Vás

Spravujte své domény a hosting pohodlně 24 hodin denně

Kontakt pro zákazníky

Technická podpora

PO-PÁ 8:00-21:00
SO-NE, svátky 9:00-21:00

E-mail: podpora@banan.cz

Online pracovník

Patrik Jankov

+420 553 810 250

Online chat

Zvládáme opensource

Na našich serverech jsme ručně ověřili funkci více než 140 opensource systémů, některé z nich nabízíme na jedno kliknutí v administraci.

Hostované domény

7688 domén 6423 1265

Poslední článek - HOMEPAGE PRVKY

O
Ověřit dostupnost domény
Technická podpora: +420 553 810 250podpora@banan.cz
Technická podpora 800-2100 (SO-NE 900-2100) X
Online pracovník: Patrik Jankov
+420 553 810 250
podpora@banan.cz nebo Online chat
Kontaktovat technickou podporu můžete zde
Kontaktovat technickou podporu můžete zde
PO-PÁ 800-2100 (víkendy a svátky 900-2100)