recherche

Maison  >  Questions et réponses  >  le corps du texte

La variable du compteur Smarty est définie dans le fichier parent mais incrémentée et utilisée dans le fichier d'inclusion enfant

<p>J'aime définir une variable de compteur dans le fichier tpl parent (First.tpl) et l'incrémenter et l'utiliser dans le fichier d'inclusion enfant (Second.tpl). </p> <p>Mais le compteur n'est plus incrémenté. </p> <p>Premier.tpl:</p> <pre class="brush:php;toolbar:false;">{assign var = "counter" value = 1 scope = "global"} {foreach ...} //itère au moins 100 fois {include file='Second.tpl'} {/foreach}</pre> <p>Deuxième.tpl :</p> <pre class="brush:php;toolbar:false;">{assign var="counter" value = $counter+1} {$counter} //le compteur n'augmente pas ! {if $counter > 10} faire quelque chose {/if} // l'instruction if échoue toujours !</pre></p>
P粉523335026P粉523335026535 Il y a quelques jours601

répondre à tous(1)je répondrai

  • P粉716228245

    P粉7162282452023-09-02 16:58:17

    C'est la méthode que j'utilise pour faire quelque chose de similaire, incrémenter une valeur dans une boucle et transmettre cette valeur au fichier inclus. Essayez-le :

    Premier.tpl

    {assign var="counter" value=0}
    {foreach ...} /* iterates at least 100 times */
        {assign var="counter" value=$counter+1}
        {include file='Second.tpl' counter=$counter}
    {/foreach}

    Deuxième.tpl

    {$counter} /* Check if counter increase */
    
    {if $counter > 10} do-something {/if}

    Attention. - J'initialise $counter à zéro.

    répondre
    0
  • Annulerrépondre