Počítání vstupu do blocku (rekurze)
- Jiří Nápravník
- Člen | 710
V šabloně vkládám rekurzivně bloky. A potřebuji nějak spočítat, pokolikáté se ten blok vykresluje
{block}
{include this}
{$counter} //tady potrebuji nejak globalne
{/block}
Jde to nějak? Jak jde o rekurzi, je to problém, protože se mi to vždy vynuluje. zkoušel jsem definovat jak před blockem, tak v blocku, i čachr s global… Nic.
Jediné co mi fungovalo, udělat si přepravkovou třídu se statickou proměnnou. Ale není něco lepšího?
- Jan Tvrdík
- Nette guru | 2595
{include this, counter => ($counter + 1)}
Spočítá hloubku, což je doufám to co chceš.
- Jiří Nápravník
- Člen | 710
To není, co potřebuji. Já potřebuji opravdu pořadí, pokolikáté to vlezlo do toho blocku.
Zkrátka vypisuji strom, a pod pátou položkou (je jedno v jakém zanoření, potřebuji pořadí) vykreslit reklamu.
- David Matějka
- Moderator | 6445
Bude stacit klasicky stdClass objekt
(object) ['value' => 1]
a predavat ten a pak jen $counter->value++
- Jiří Nápravník
- Člen | 710
@DavidMatějka díky, funguje! měl jsem za to, že by proměnná musela být statická a nemusí:)