foreach/foreachelse

Posledné novinky

Asi hotovo.

Takže, už to vyzerá byť dokončené. Od minula som pridal animovanie cez timer a možnosť upravovať...


14.12.2014 19:13
Kategória: Projekt key-framing a interpolácia

Prvá funkčná verzia

Po tejto sobote mám už prvý reálny výsledok. Viem nastavovať keyframe s pozíciou kamery, pohľadom...


14.12.2014 00:23
Kategória: Projekt key-framing a interpolácia
Choď do archívu >>

foreach/foreachelse

Značky na riadenie sekvenčného prechodu cez definované pole.

foreach

Značka foreach slúži na sekvenčný prechod cez pole v cykle, pričom každú hodnotu pola priraďuje do zvolenej premennej.

Ide o párovú značku!

Parameter Typ Vyžadovaný Východzia hodnota Význam
from Marker Áno

Premenná markera obsahujúca pole, ktoré sa má sekvenčne prejsť v cykle.

item Reťazec Áno

Názov premennej markera, do ktorej bude uložená hodnota prvku pola.

key Reťazec Nie NULL

Názov premennej markera, do ktorej bude uložený názov kľúča prvku pola.

name Reťazec Nie NULL

Názov foreach cyklu, slúži na špecifické pomenovanie lokálnej premennej, ktorá bude fungovať ako pole špeciálnych premenných cyklu.

Cyklus foreach vytvára v každej iterácii špeciálne premenné, ktoré sú dostupné prostredníctvom názvu premennej cyklu pre hodnotu pola. V prípade pomenovania cyklu, sú tieto špeciálne premenné vytvárané priamo pod názvom cyklu.

K týmto premenným môžeme teda pristupovať takto:

  • {$swift['foreach'][názov premennej v item][názov špeciálnej premennej]} ak nebolo použité pomenovanie cyklu,
  • {$name[názov špeciálnej premennej]} ak bolo použité pomenovanie cyklu, pričom názov premennej $name je zhodný s názvom cyklu.

Špecilálne premenná sú:

  • first - boolean hodnota, true ak ide o prvý prvok pola,
  • last - boolean hodnota, true ak ide o posledný prvok pola,
  • count - počet prvkov pola,
  • counter - počítadlo prvkov pola, začína od 1, zvyšuje sa po každej iterácii,
  • iterator - počítadlo prvkov pola, začína od 0, zvyšuje sa po každej iterácii.

Príklad

Zobraziť čistý text Zobraziť zvíraznený text
  1. <s:foreach from=$novinky item="novinka" name="n">
  2. <p>Novinka {$n['counter']}/{$n['count']}</p>
  3. <p><strong>{$novinka['nazov']}</strong></p>
  4. <p>{$novinka['text'];s:nl2br()}</p>
  5. </s:foreach>

foreachelse

Značka foreachelse sa používa vždy iba medzi párovou značkou foreach.

Táto značka existuje iba vo forme otvárajúcej značky. Zatváracia značka je <s:/foreach>.

Značka vytvára druhotný obsahový blok, ktorý sa vykonáva v prípade, že iterované pole vo foreach je prázdne.

Parameter Typ Vyžadovaný Východzia hodnota Význam

Príklad

Zobraziť čistý text Zobraziť zvíraznený text
  1. <s:foreach from=$novinky item="novinka" name="n">
  2. ...
  3. <s:foreachelse>
  4. <p>Bohužiaľ, teraz nie sú uverejnené žiadne novinky.</p>
  5. </s:foreach>