属性 | 类型 | 是否必须 | 缺省值 | 描述 |
---|---|---|---|---|
name | string | Yes | n/a | 该循环的名称 |
loop | [$variable_name] | Yes | n/a | 决定循环次数的变量名称 |
start | integer | No | 0 | 循环执行的初始位置. 如果该值为负数,开始位置从数组的尾部算起. 例如:如果数组中有7个元素,指定start为-2,那么指向当前数组的索引为5. 非法值(超过了循环数组的下限)将被自动调整为最接近的合法值. |
step | integer | No | 1 | 该值决定循环的步长. 例如指定step=2将只遍历下标为0、2、4等的元素. 如果step为负值,那么遍历数组的时候从后向前遍历. |
max | integer | No | 1 | 设定循环最大执行次数. |
show | boolean | No | true | 决定是否显示该循环. |
{section loop = $varName[, start = $start, step = $step, max = $max, show = true]}
name: Der Name des Abschnitts , nicht verwendet Fügen Sie $
$loop hinzu: die Variable, die in einer Schleife ausgeführt werden soll. Verwenden Sie „assign“, um diese Variable im Programm zu bearbeiten.
$start: Der Index zum Starten der Schleife, der Schleifenindex beginnt standardmäßig bei 0
$step: Das Inkrement des Index während jeder Schleife
$max: Der maximale Schleifenindex
$show : boolescher Typ, bestimmt, ob dieser Block angezeigt werden soll, der Standardwert ist true
Es gibt ein Substantiv, das einer Erklärung bedarf:
Schleifenindex: Sein tatsächlicher englischer Name ist Index, was Index bedeutet Es wird hauptsächlich zum leichteren Verständnis als „Index“ bezeichnet. Es stellt den Schleifenindex vor
dar, wenn dieser Schleifenblock angezeigt wird. Er beginnt standardmäßig bei 0 und wird von $start beeinflusst. Wenn $start auf 5 gesetzt ist, beginnt er auch bei 5 zu zählen Wir haben es teilweise verwendet. Dies ist ein Attribut des aktuellen
{Abschnitts}. Die aufrufende Methode ist Smarty.section.sectionName.index. Der Abschnittsname bezieht sich hier auf das Namensattribut im Funktionsprototyp. Die Attributwerte des
{section}-Blocks sind:
1. index: der „zyklische Index“, den wir oben eingeführt haben, der Standardwert ist 0
2: der vorherige Wert des aktueller Index, der Standardwert ist -1
3. index_next: der nächste Wert des aktuellen Index, der Standardwert ist 1
4: ob es der erste Zyklus ist ist der letzte Zyklus
6. Iteration: die Anzahl der Schleifen
7. rownum: die aktuelle Zeilennummer, ein weiterer Alias der Iteration
8 Block zum Zählen der Anzahl der Schleifen im Abschnitt
9. total: Die Anzahl der Schleifen kann verwendet werden, um die Anzahl der Schleifen nach dem Abschnitt zu zählen. block
10 und wird verwendet, um zu bestimmen, ob der Abschnitt angezeigt wird
*foreach-Schleife
1: Wird zum Schleifen einfacher Arrays verwendet, es handelt sich um eine selektive Abschnittsschleife und ihr Definitionsformat ist:
{foreach from=$ array item=array_id}
{foreachelse}
{/foreach}
wobei „from“ die Array-Variable angibt, die in einer Schleife ausgeführt werden soll, „item“ der Name der Variablen, die in einer Schleife ausgeführt werden soll, und „die Anzahl der Schleifen“. wird durch die Anzahl der durch from angegebenen Array-Variablen bestimmt. {foreachelse} wird zur Verarbeitung verwendet, wenn das im Programm übergebene Array leer ist. Hier ist ein einfaches Beispiel:
==================== ===================
example6.tpl
==================== == =====================
<html> <head><title>这是一个foreach使用的例子</title></head> <body> 这里将输出一个数组:<br> <{foreach from=$newsArray item=newsID}> 新闻编号:<{$newsID.newsID}><br> 新闻内容:<{$newsID.newsTitle}><br><hr> <{foreachelse}> 对不起,数据库中没有新闻输出! <{/foreach}> </body> </html>
Das obige ist der detaillierte Inhalt vonDetaillierte Verwendung der Abschnittsschleife in Smarty. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!