Tetszőleges mélységű tömb kilistázása:
Az alábbi Smaty kóddal a következő felépítésű tömböket listázhatjuk ki:
$tomb = array('nev',1,2,3...) ahol 1,2,3,... lehetnek szintén ugyanilyen felépítésű tömbök.
pl:
array(
'nev'=>"cím1",
1=>array(
'nev'=>"Első lista neve",
1=>'1/1',
2=>array(
'nev'=>'Első/második',
1=>'1/2/1',
2=>'1/2/2',
3=>'1/2/3'
)
2=>'Nem tömb');
Ezt a tömböt az alábbi smarty kóddal tudjuk kiiratni:
{* rec_table.tpl *}
<ul>
{foreach from=$tomb key=k item=i}
{if is_array($i) || $k!='nev'}
<li>
{if is_array($i)}
{$i.nev}
{include file='rec_table.tpl'}{* ez a rekurzív fügvény*}
{elseif $k!='nev'}{$i}
{/if}
</li>
{/if}
{/foreach}
</ul>
Linkek listája:
Az alábbi kóddal php-től kapott honlapok linkjeit irathatjuk ki:
<table width="600" height="100%" class="tableBorder">
<tr>
<td class="greenTitle">Linkek</td>
</tr>
<tr>
{foreach from=$linkek key=k item=i} {* végigmegyünk a kapott tömbön, és kiírjuk a linkeket *}
<tr>
<td class="contentRow"><a href="{$i.url}">{$i.nev}</a></td>
</tr>
{/foreach}
</table>
Összetett feladat
Az fenti feladatok kombinációja megtalálható a következő példa programban:
smartybemutato
Készítette: Pletscher Beáta 2010